Dynamic Real-Time Tiered Client Access

ABSTRACT

Wireless client devices within a wireless network exchange data with other wireless devices during particular time slots determined by the network. More particularly, the system generates and wirelessly broadcasts synchronization information to the client devices, where the synchronization information contains individual masks to be applied to bit fields of individual client devices, where said time slots are determined in accordance with the masked bit fields. In such a manner, client devices can be coordinated to communicate with the system in a dynamic real-time tiered manner.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority, under 35 U.S.C. §120, to U.S.patent application Ser. No. 11/620,577, filed Jan. 5, 2007 and entitled“Dynamic Real-Time Tiered Client Access,” which claims the benefit,under 35 U.S.C. §119, of U.S. Provisional Patent Application No.60/760,362, filed Jan. 6, 2006 and entitled “Securing TransactionsBetween an Electric Key and Lock Within Proximity of Each Other,” theentireties of which are hereby incorporated by reference.

BACKGROUND

Optimizing sales transactions, providing secure access to physical anddigital assets, uniquely identifying individuals, and generallyimproving communications and data exchange are challenges faced by manybusinesses and organizations. Ensuring that these processes are safe,efficient, reliable, and simple is important to companies, merchants,service providers, users, and consumers. Well-known technologies such asuser-specific magnetic cards (e.g., credit and debit cards, employeebadges), and more recent developments such as contactless cards designedto allow access or authorization when placed near a compatible reader,are examples of attempts to address the need to instill efficiency andintegrity in, for example, the general classes of transactions describedabove.

SUMMARY

According to at least one aspect of one or more embodiments of thepresent invention, a method of facilitating data exchange includes:assigning a first specific time slot for a first client device towirelessly communicate with a fixed proximity-based reader device; andassigning a second specific time slot for a second client device towirelessly communicate with the fixed proximity-based reader device.

According to at least one other aspect of one or more embodiments of thepresent invention, an apparatus includes: a physical, portable keydevice adapted to wirelessly communicate data with a fixed reader devicewhen located in a wireless coverage area of the fixed reader device,where the key device is arranged to communicate with the fixed readerdevice during a time slot determined based on a bit field stored in thekey device.

According to at least one other aspect of one or more embodiments of thepresent invention, a system includes: a fixed reader device operativelyconnected to a network device and having a first wireless coverage rangewithin a second wireless coverage range; and a portable client devicearranged to wirelessly communicate data with the fixed reader devicewhen the client device is within the first wireless coverage range,where a time slot during which the client device communicates data withthe fixed reader device is determined based on synchronizationinformation received by the client device.

According to at least one other aspect of one or more embodiments of thepresent invention, a system includes: a network device arranged towirelessly broadcast synchronization information in a first wirelesscoverage range; and a portable client device adapted to wirelesslycommunicate data with a reader device when the client device is locatedin communication proximity of the reader device, where the client deviceis arranged to receive data from the network device during a time slotdetermined based on the synchronization information.

According to at least one other aspect of one or more embodiments of thepresent invention, a system includes: a network device configured towirelessly broadcast synchronization information; and a portable clientdevice configured to wirelessly receive the synchronization information,where the received synchronization information includes informationassigning a time slot during which the client device can receive datafrom the network device.

According to at least one other aspect of one or more embodiments of thepresent invention, a method of facilitating data exchange includes:wirelessly broadcasting synchronization information to a portable clientdevice, where the synchronization information includes informationassigning a time slot during which the client device can receive data;and wirelessly broadcasting data for reception by the client deviceduring the time slot.

The features and advantages described herein are not all inclusive, and,in particular, many additional features and advantages will be apparentto those skilled in the art in view of the following description.Moreover, it should be noted that the language used herein has beenprincipally selected for readability and instructional purposes and maynot have been selected to circumscribe the present invention.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows a single wireless cell in which a reader decoder circuit(RDC) and a personal digital key (PDK) are present.

FIG. 2 shows partially overlapping RDC cells.

FIG. 3 shows synchronized partially overlapping RDC cells.

FIG. 4 shows a synchronized multi-cell system in accordance with one ormore embodiments of the present invention.

FIG. 5 shows a PDK in accordance with one or more embodiments of thepresent invention.

FIG. 6 shows a portion of the PDK shown in FIG. 5.

FIG. 7 shows a portion of the PDK shown in FIG. 5.

FIG. 8 shows an RDC in accordance with one or more embodiments of thepresent invention.

FIG. 9 shows an RDC in accordance with one or more embodiments of thepresent invention.

FIG. 10 shows an arrangement of a timeslot in accordance with one ormore embodiments of the present invention.

FIG. 11 shows a superframe in accordance with one or more embodiments ofthe present invention.

FIG. 12 shows a coordinator superframe in accordance with one or moreembodiments of the present invention.

FIG. 13 shows an overall framing structure in accordance with one ormore embodiments of the present invention.

FIG. 14 shows an RDC beacon for use in a single cell system inaccordance with one or more embodiments of the present invention.

FIG. 15 shows a single cell system in accordance with one or moreembodiments of the present invention.

FIG. 16 shows a PDK-RDC handshake in accordance with one or moreembodiments of the present invention.

FIG. 17 shows a coordinator beacon configuration in accordance with oneor more embodiments of the present invention.

FIG. 18 shows a PDK transmit timeslot enable operation in accordancewith one or more embodiments of the present invention.

FIG. 19 shows a location tracking system configuration in accordancewith one or more embodiments of the present invention.

FIG. 20 shows a coordinator RDC (CRDC) location tracking handshake inaccordance with one or more embodiments of the present invention.

FIG. 21 shows a configuration in which RDCs and PDKs are coordinatedwithin a CRDC cell in accordance with one or more embodiments of thepresent invention.

FIG. 22 shows a CRDC framing and PDK timeslot response operation inaccordance with one or more embodiments of the present invention.

FIG. 23 shows a CRDC beacon and PDK response handshake in accordancewith one or more embodiments of the present invention.

FIG. 24 shows a PDK/RDC association in a CRDC cell in accordance withone or more embodiments of the present invention.

FIG. 25 shows an RDC beacon transmission in accordance with one or moreembodiments of the present invention.

FIG. 26 shows a deep sleep state diagram in accordance with one or moreembodiments of the present invention.

FIG. 27 shows an authorization denial handshake operation in accordancewith one or more embodiments of the present invention.

FIG. 28 shows an authorization grant and association handshake inaccordance with one or more embodiments of the present invention.

FIG. 29 shows a single cell with multiple PDK access in accordance withone or more embodiments of the present invention.

FIG. 30 shows multiple single cell RDCs with cell overlap in accordancewith one or more embodiments of the present invention.

FIG. 31 shows a floor layout and cell distribution in accordance withone or more embodiments of the present invention.

FIG. 32 shows a gambling table with RDCs in accordance with one or moreembodiments of the present invention.

FIG. 33 shows a CRDC beacon to central server flow in accordance withone or more embodiments of the present invention.

FIG. 34 shows a CRDC beacon to central server handshake in accordancewith one or more embodiments of the present invention.

FIG. 35 shows a configuration of overlapping CRDC cells in accordancewith one or more embodiments of the present invention.

FIG. 36 shows a c-beacon handoff for RDC-PDK communication in accordancewith one or more embodiments of the present invention.

FIG. 37 shows a PDK wakeup and response state flow in accordance withone or more embodiments of the present invention.

FIG. 38 shows a configuration of an electronic game with an integratedRDC in accordance with one or more embodiments of the present invention.

FIG. 39 shows an electronic game player tracking and game enablehandshake in accordance with one or more embodiments of the presentinvention.

FIG. 40 shows an electronic game player association handshake inaccordance with one or more embodiments of the present invention.

FIG. 41 shows a configuration of an electronic game with an integratedRDC in accordance with one or more embodiments of the present invention.

FIG. 42 shows an electronic game player tracking and game enablehandshake in accordance with one or more embodiments of the presentinvention.

FIG. 43 shows an electronic game player association handshake inaccordance with one or more embodiments of the present invention.

Each of the figures referenced above depict an embodiment of the presentinvention for purposes of illustration only. Those skilled in the artwill readily recognize from the following description that one or moreother embodiments of the structures, methods, and systems illustratedherein may be used without departing from the principles of the presentinvention.

DETAILED DESCRIPTION

In the following description of embodiments of the present invention,numerous specific details are set forth in order to provide a morethorough understanding of the present invention. However, it will beapparent to one skilled in the art that the present invention may bepracticed without one or more of these specific details. In otherinstances, well-known features have not been described in detail toavoid unnecessarily complicating the description.

In general, embodiments of the present invention relate to a techniquefor wirelessly communicating with a plurality of client devices withoutdata collision. Particularly, in one or more embodiments, individualclient devices are assigned time slots during the client devices maywirelessly communicate.

At perhaps a most basic level, one or more embodiments includes apersonal digital key (“PDK”) and a reader decoder circuit (“RDC”). Ingeneral, a PDK is a portable wireless device that may be convenientlycarried by an individual to facilitate wireless tracking and/or allowthe individual to wirelessly access various applications, assets, and/orservices. As further described in detail below with reference to FIGS.5-7, a PDK may be any device that (i) may be worn, placed in a pocket,wallet, or purse of a user, or attached to equipment, (ii) has abi-directional wireless communications transceiver, and (iii) storespublic and/or secret electronic identification numbers, as possibly someset of cryptographic keys. The form factor of the PDK is not limiting,so long as the PDK may be portably, and preferably conveniently andseamlessly, carried by an individual. For example, a PDK may be in theform of a “key fob” or a card, or in certain embodiments, a PDF mayactually be integrated with or implemented in another device, such as awatch or mobile computing device (e.g., cellular phone, personal digitalassistant (PDA)).

An RDC, as used in one or more embodiments, is a device that canwirelessly interact with a PDK to link the PDK user with variousapplications, assets, and/or services. The RDC may be a fixed accesspoint serving as a gatekeeper for a PDK requesting access to aparticular system. An RDC may be used in various settings and/orapplications. For example, an RDC may be physically incorporated into acasino floor itself, an electronic game, a doorway, a pedestrian trafficmonitoring point, a personal computer application, an e-commerce device(e.g., an automatic teller machine (ATM)), or any other applicationrequiring a secure transaction or access control.

Further, secure data exchange for various financial and/or retailapplications may be facilitated through use of a PDK and RDC inaccordance with one or more embodiments. For example, a purchasingsystem may be implemented whereby a consumer can purchase goods orservices using his/her personal “key” (e.g., a PDK) based on the keybeing in detectable wireless proximity of a reader device (e.g., anRDC). The purchase transaction may then be carried out based on somedata exchange between the key and the reader device, where the keystores accessible, and possibly encrypted or encoded, information aboutthe consumer (e.g., name, address, phone number, bank accountinformation, biometric information, credit or debit card information).The validation or authentication of the consumer may occur either on thekey itself and/or by the reader device. In the case of “on-key”validation, for example, the reader device may pass some informationabout the consumer (e.g., a biometric input, such as fingerprint data)to the key, which then matches the data provided by the reader devicewith permanently stored secure data about the consumer.

Various other applications or uses involving any number of PDK and RDCdevices are possible in accordance with one or more embodiments.Accordingly, while examples of scenarios and applications are describedherein for purposes of illustration and clarity, the present inventionis not limited to any particular application, scenario, setting, or use.

Single Cell Operation of the RDC and PDK

Now referring to FIG. 1, it shows a single cell 10 in which, at somepoint in time, an RDC 12 and a PDK 14 are present. The RDC 12 may besome fixed device that has a cell radius defined by its wirelesscoverage boundary. When an individual carrying the PDK 14 comes intoproximity of the RDC 12 by entering a coverage area of the RDC 12, awireless communications session is initiated between the PDK 14 and theRDC 12. If the RDC 12 determines that the PDK 14 is authorized tocommunicate, information between the PDK 14 and the RDC 12 may besecurely exchanged. Information securely obtained from the user's PDK 14may then be used locally or sent through a back-end communicationschannel to a central server (not shown). When the transaction completesor when the PDK 14 leaves the coverage area of the RDC 12, wirelesscommunication between the RDC 12 and the PDK 14 ceases. Thereafter, theRDC 12 may remain idle (i.e., be in a “tracking” mode) until a PDK againenters the cell 10.

Unsynchronized Multi-Cell Operation of Multiple RDCs and PDKs

Now referring to FIG. 2, in certain implementations, multiple RDC cells20, 22, 24 may exist in an area. The RDCs in the multiple cells 20, 22,24 may or may not be aware of each other, but are able to interact withone or more PDKs. The PDKs, in turn, are capable of interacting with theRDCs. As shown in FIG. 2, there are three partially overlapping RDCcells 20, 22, 24. An RDC 26, 28, 30 in cells 20, 22, 24, respectively,is independent and may not be in association with the other RDCs.Although the cells 20, 22, 24 partially overlap, each RDC 26, 28, 30 iscapable of wirelessly communicating with any PDK 29, 31 within its cellboundary.

In one or more embodiments, the RDC 26, 28, 30 is capable of determiningif energy is present on any given wireless channel. The RDC 26, 28, 30may then determine the best channel to operate on and continue to placean identification marker (or “beacon”) out for any PDK 29, 31 thatenters its cell boundary.

The PDK 29, 31 itself may be responsible for locating an RDC 26, 28, 30by searching through available wireless channels, communicating with anRDC 26, 28, 30, and notifying the RDC 26, 28, 30 of its presence. In animplementation where two RDCs can communicate with one another (e.g.,RDCs 26, 28 in cells 20, 22 shown in FIG. 2), the RDCs may selectdifferent communication frequencies. However, in the case where cellsoverlap, but each RDC cannot directly communicate with one another(e.g., RDCs 28, 30 in cells 22, 24 shown in FIG. 2), any PDK intendingto access an RDC, may have to alert the RDC of possible collisions onthe wireless channel on which the RDC is operating.

Synchronized Multi-Cell Operation of Multiple RDCs and PDKs

In certain implementations, multiple RDCs may be placed to allow anoverlap of cells between each adjacent RDC within a confined area. Thispermits each RDC to be aware of its surrounding RDCs, thereby allowingsynchronization of each RDC to the other. For example, now referring toFIG. 3, there are shown three partially overlapping RDC cells 40, 42, 44with RDCs 46, 48, 50. The cell 40, 42, 44 of each respective RDC 46, 48,50 overlaps the cell of the adjacent RDC 46, 48, 50. In such a manner,each RDC 46, 48, 50 may initiate wireless communication with an adjacentRDC 46, 48, 50. This begins a negotiation process among the RDCs 46, 48,50 to determine which RDC 46, 48, 50 should be the coordinator and onwhat channel to communicate.

Although any of the RDCs 46, 48, 50 may be the coordinator, in theexample shown in FIG. 3, RDC 48 in cell 42 may be a favorable candidate.Its selection permits ubiquitous coverage of the RDCs 46, 48, 50 shownin FIG. 3, additionally providing multiple transactions and timingalignment through a “daisy chain” whereby RDC 46 synchronizes RDC 48 andRDC 48 synchronizes RDC 50.

Still referring to FIG. 3, each RDC 46, 48, 50 may also share frequencyand timeslot information among each other and with one or more PDKs. Itis noted that if a PDK is located at an edge of, for example, cell 40,that PDK may still monitor the other channels that adjacent RDCs 48, 50are operating on, but may not have access to these RDCs. Thus, in aconfiguration such as that shown in FIG. 3, a PDK may be forced toconsume more energy due to the monitoring of multiple channels. Further,it is noted that as cell density increases, more collisions may beginoccurring and/or active communication times may increase.

Coordinated Multi-Cell Operation

Now referring to FIG. 4, it shows an exemplar synchronized (or“coordinated”) multi-cell system 60 in accordance with one or moreembodiments. As will be apparent from the description below, asynchronized multi-cell system may provide ubiquitous PDK and RDCsynchronization as well as PDK battery conservation within the system60. Further, in addition to ubiquitous synchronization, channel andfrequency capacity may both be coordinated, thereby reducing collisionswhile increasing system throughput.

Turning now to FIG. 4 particularly, a coordinator RDC (“CRDC”) 62 hasubiquitous coverage of a plurality of cells 64, 66, 68 in the system 60.In one or more embodiments, the CRDC 62 provides beacon transmissions,which can be used to synchronize a plurality of devices within thecoverage area 76 of the CRDC 62. In other words, by providing wide-areacoverage, a plurality of devices, both RDCs 70, 72, 74 and PDKs (shown,but not labeled in FIG. 4), in the coverage area 76 are able to monitora wireless transmission beacon broadcast by the CRDC 62 and determinehow and when to communicate in a coordinated manner. Further, in one ormore embodiments, the CRDC 62 may broadcast additional informationincluding, but not limited to, a beacon transmission rate, framinginformation, channel information, system identification, and/or clusteridentification. Moreover, it is noted that although the CRDC 62 mayprovide timing and certain system related information, RDCs 70, 72, 74and PDKs may still communicate among themselves.

As described above with reference to FIGS. 1-4, there are at least threedifferent types of devices (or software entities) that may be used, forexample, in a synchronized multi-cell system, such as that shown in FIG.4. A PDK is a trackable device having secure electronic keys and thatmay be portably carried by a user. An RDC is a device that acts as agatekeeper controlling access of a PDK to a particular system. A CRDC isa device that is used to synchronize one or more RDCs and PDKs within aparticular geographic area formed of either a single cell or multiplecells. A more detailed description of each of these components is nowprovided below.

PDK

Now referring to FIG. 5, it shows an example PDK 80 in accordance withone or more embodiments. Based on a specific application or use of thePDK 80, the PDK 80 may have different configurations for interactingwith the PDK user. For example, the PDK 80 may have no user inputmechanism or display, may have a single button input mechanism, may havea multi-button input mechanism, may have a biometric input mechanism,and/or may have an interactive user input mechanism and/or display.

As shown in FIG. 5, the PDK 80 has a wireless radio frequency (RF) mediaaccess control (MAC) and physical layer device 82 that facilitatesbi-directional communications with external wireless RF devices, such asan RDC (not shown). In one or more embodiments, the wireless RF MAC andphysical layer device 82 may communicate according to an IEEE 802.15.4protocol. However, in one or more other embodiments, the PDK 80 may becapable of communicating according to one or more different wirelessprotocols.

The PDK 80 also has a service and application layer controller 84 thatincludes a MAC portion 94 that serves as an interface with the wirelessRF MAC and physical layer device 82. Further, the service andapplication layer controller 84 also includes portions that providespecific functions used to protect electronic keys and services of thePDK 80. Further still, the service and application layer controller 84may support an optional user interface 86, which if implemented, allowsuser interaction with the PDK 80. A cryptography engine 88 may also beresident on the PDK 80.

Now also referring to FIG. 6, it shows a non-volatile memory storage 90and a volatile memory storage 92 of the PDK 80. These two devices 90, 92are related to security storage. In one or more embodiments, thesedevices 90, 92 may be accessible by an RDC (not shown) having theappropriate security algorithms and by private service providers havingthe correct security information. However, in one or more otherembodiments, certain secured data may not be wirelessly communicated atall, in which case, validation or authorization occurs on the PDK 80itself.

Specifically as to the non-volatile memory storage 90, a public serialnumber may be used to identify the PDK 80 and allow secure look-up of asecure serial number and a cryptography key via a remote server (notshown). The secure serial number may be thought of as being equivalentto, for example, encoded user identification information stored in amagnetic strip of a credit card, whereby such information is not visibleto the outside world. The cryptography key may be used to allow decodingof the secure serial number from, for example, an RDC (not shown).

Further, it is noted that in one or more embodiments, the non-volatilememory storage 90 and associated parameter lengths may be dynamicallyassigned, with overall constraints depending on, for example, availablememory in the PDK 80.

Now, specifically as to the volatile memory storage 92, this area may beused for security and may allow a service provider to store a profilecontaining secret keys and other secure information, such as privilegeinformation. A service provider identification value may be stored toallow the service provider to easily identify the user. In addition, aservice provider service identification value may be stored and used toallow that service provider to access that information. The PDK 80validates that service provider identification value via the serviceprovider secret key before allowing access to that service provider'sprofile area in the PDK 80. Further, as shown in FIG. 6, the volatilememory storage 92 may have a number of service provider profiles.

Now also referring to FIG. 7, the service provider profile area may beof a variable length and allow a service provider the flexibility tostore various parameters. The length may be determined by a byte countfollowing the service provider's secret key in the memory area as shownin FIG. 7.

RDC

Next, turning to a more detailed description of an RDC 100 according toone or more embodiments, reference is made below to FIGS. 8 and 9. Ingeneral, an RDC 100, as described above, may be fixed and used to allowa PDK access into a particular system (e.g., gaming/casino system,financial institution, retail system). The RDC 100 may have differentconfigurations to support different types of secure transactions. Someexamples of applications and uses of RDCs include, but are not limitedto, casino slot machines and gaming consoles, secure entryway control,user/equipment location tracking, personal computers and componentsthereof (e.g., disk drives), financial institution interactions, andretail purchasing. In the case of a personal computer, or any computersystem for that matter, a reader device, such as an RDC, may be used tocontrol access to certain data stored in the computer system. Thus, insuch embodiments, an RDC 100 may be thought of as providing a form ofdigital content management.

In certain cases, the RDC 100 effectively acts as a gatekeeper allowingauthorized individuals access to specific information or transactions.In other cases, because an RDC 100 may use proximity detection fordetermining if a PDK is within a particular geographical area, the RDC100 may also be used for tracking one or more PDKs within a given areaor network. In still other cases, an RDC 100 may be used for bothlocation tracking and secure transaction purposes.

FIG. 8 shows a type of RDC 100 that uses a single wireless RF MAC andphysical layer device 102. In RDC 100, communications are passed throughthe single wireless RF MAC and physical layer device 102. The singlewireless RF MAC and physical layer device 102 facilitates bi-directionalcommunication with one or more external RF wireless devices, such as aPDK (not shown). Thus, the single wireless RF MAC and physical layerdevice 102 may communicate with both PDKs according to assigned timeslots (further described below) and one or more CRDCs (described infurther detail below). Further, it is noted that in one or moreembodiments, the single wireless RF MAC and physical layer device 102may wirelessly communicate according to an IEEE 802.15.4 protocol.However, in one or more other embodiments, the RDC 100 may be capable ofcommunicating according to one or more different wireless protocols.

The RDC 100 also has a service and application layer controller 104. Theservice and application layer controller 104 has a MAC portion 106specific to a wireless protocol of the RDC 100. The service andapplication layer controller 104 may further provide functions relatedto associating and tracking PDKs (not shown), as well as providinginformation back to a service provider.

The service and application layer controller 104 includes systemparameters and configuration information 108 that may be used toidentify the RDC 100 and define how the RDC 100 operates within a givenenvironment. Further, the system parameters and configurationinformation 108 may define how the RF link is time slotted and/or how RFfrequencies are used in the system. In one or more embodiments, thesevalues may be optimized to reduce power consumption within one or morePDKs (not shown).

Still referring to the RDC 100 shown in FIG. 8, a cryptography engine110 may also be present. One or more of various storage elements mayalso exist in the service and application layer controller 104. A securekey storage area 112 may be programmed to define public, secret, and/orcryptography keys for the RDC 100.

Further, in one or more embodiments, the service and application layercontroller 104 may have additional memory areas, one or more of whichmay dynamically change dependent on system changes and wireless PDKconnections. A volatile service provider storage 114 may allow a serviceprovider to store semi-static information related to a specific PDK (notshown) or group of PDKs (not shown) for real-time access for thosedevices. An example might relate to a hotel room door lock. With a hotelroom door, service provider information related to a PDK may be storedin the RDC. When a user comes within proximity of the door, the doorcould unlock. Thus, in this example, the RDC is not required tointerface with a back-end server in real-time, thereby reducingbandwidth consumption to the back-end server, while allowing the userimmediate access. Moreover, in one or more embodiments, the RDC may havea connection to a network or other infrastructure for receiving controlsignals as to which PDKs should be allowed to unlock the door.

The service and application layer controller 104 may also have aproximity tracking PDK list 116 that includes PDK identity information,signal quality metrics, and/or time stamps for each PDK (not shown) thatis in proximity of the RDC 100. Such information may be used in the RDC100 to perform an operation and/or may be relayed to a back-end serverwhen, for example, location tracking is desired.

Still referring to FIG. 8, the service and application layer controller104 may also have an associated PDK parameter storage 118. Theassociated PDK parameter storage 118 may contain a list of one or morePDKs (not shown) actively performing transactions with the RDC 100. Itis noted that in one or more embodiments, although such transactions areperformed with the RDC 100, the actual processing result of the RDC 100to/from PDK transaction may be passed to a back-end server for furtherprocessing.

A service provider interface 120 may allow both control and query of theRDC 100. The service provider interface 120 may further provide thetransport for keys from a PDK (not shown). In one or more embodiments,the service provider interface 120 may use a universal asynchronoustransmitter receiver (UART) interface and may allow some level ofcontrol and status of the RDC 100.

An external service provider controller 122 may be attached to theservice provider interface 120 with a system stack 124 residing in theexternal service provider controller 122. The system stack 124 may allowa third party to easily interface with the RDC 100, possibly requiringfunction calls to the system stack 124. Further, the external serviceprovider controller 122 may provide translation of data. It is stillfurther noted that the external service provider controller 122 and theRDC 100 may reside on the same physical component (e.g., circuit board).

Now referring to FIG. 9, it shows another type of RDC 130, which has anadditional wireless RF MAC and physical layer device 132. In thisconfiguration, components having like reference numbers as thosereference numbers in FIG. 8 function identically or similarly to thecorresponding components in FIG. 8. The additional wireless RF MAC andphysical layer device 132 may be used to maintain synchronization with aCRDC (not shown) and pass networking related information, while theother wireless RF MAC and physical layer device 102 may be used tocommunicate with one or more PDKs (not shown) within a cell of the RDC130. Further, the service and application layer controller 104 may havean additional MAC portion 134 to interface with the additional wirelessRF MAC and physical layer device 132.

Still referring to the RDC 130, the use of dual wireless transceivers102, 132 may allow for increased throughput and efficient use of the RFspectrum available to the system. Thus, in other words, these multiplewireless links allow simultaneous reception of data from client devices(e.g., PDKs) and of CRDC timing information on separate channels,thereby eliminating the need for back-channel synchronization of thenetwork. Further, the multiple wireless links may allow for thesimultaneous proximity sensing of multiple client devices (e.g., PDKs)in a “tracking” mode, along with the association of a client device withone particular cell for wireless application (e.g., secure transaction)purposes. For example, an RDC serving as a wireless player trackingdevice on a casino floor may, while keeping track of multiple transientplayers entering and leaving the zone of coverage of that particulartracking device, invite a particular player to begin a gaming session.This session may also include the exchange of player information with,for example, both the game and its back-end server to allow credit forgames played and money spent. In another scenario, the system mayfacilitate another entire suite of applications, such as, for example,unlocking a hotel room door, while simultaneously keeping track ofunrelated client devices coming and going within its coverage range.

CRDC

Next, turning to a more detailed description of a CRDC according to oneor more embodiments, a CRDC may, for example, be an RDC of either of thetypes described above with reference to FIGS. 8 and 9. At least onedifference, however, between a CRDC and an RDC is that the CRDC hasincreased RF power output, or more generally, casts a broader range ofwireless coverage. Another difference is that, in one or moreembodiments, a CRDC may not communicate bi-directionally with a PDK,whereas an RDC of the types described above with reference to FIGS. 8and 9 may. Moreover, a CRDC may be capable of communicating with anotherCRDC, and may also be capable of communicating with an RDC. It is notedthat CRDC-CRDC communication may allow for frame synchronization andfrequency planning without requiring a wired connection between theCRDCs. The same may be true for CRDC-RDC communications. In certainimplementations, it may occur that CRDC cell boundaries do not overlap,and thus, the corresponding CRDCs may not be able to directlycommunicate with another. In this case, an RDC that is between the cellsmay communicate with both CRDCs and act as a communication bridge topass frequency and other control information in an effort to coordinatethe system.

Still describing the general application and use of a CRDC in accordancewith one or more embodiments, the CRDC may serve as a stand-alonewireless beacon that may be used to coordinate the timing and activitiesof individual, physically separated wireless providers (e.g., RDCs) withdefined coverage areas, along with their clients (e.g., PDKs) in anautonomous, wireless proximity sensing and data transfer network. A CRDCmay also be used to propagate system-wide information (e.g., periodicchanges in cryptographic keys), thereby relieving traffic otherwiseloading a wired back-end network linking individual cells to theback-end system. Thus, the CRDC may act as a system-wide master clockacross multiple cells that may not be close enough to synchronize witheach other directly without a wired connection.

Wireless Protocol

As described above, a system in accordance with one or more embodimentsmay rely, or at least partly be based, on an IEEE 802.15.4 protocol. Inrelation to a protocol usable in one or more embodiments, a “timeslot”is defined as a period of time that information is communicated betweentwo devices. FIG. 10 shows an example of portions of a timeslot inaccordance with one or more embodiments. The timeslot is divided into aframe (or physical packet data unit (PPDU)) and inter-frame spacing(IFS). The frame includes synchronization information and carries thepayload of data. The IFS allows time for a receiving end unit to processthe data in the frame and transmitter turn-around time. Both the PPDUand the IFS may be variable in length as determined by an amount of datacarried in the frame.

The frame is broken down into a sync header (SHR), a physical header(PHR), and a physical service data unit (PSDU). The SHR may contain apreamble sequence and start-of-frame delimiter (SFD) that allows areceiving device to acquire the RF signal and synchronize to the frame.The PSDU may then be used to carry both 802.15.4 MAC and user datainformation. Further, it is noted that the PSDU may be of a variablelength that is determined by the type of MAC and data information beingcarried.

Still referring to FIG. 10, the frame may be further divided intosymbols, which, in turn, are divided into bits. In one or moreembodiments, each symbol may includes 4 bits that are sent leastsignificant bit to most significant bit at the base band level.

Now referring to FIG. 11, a “superframe” is formed of multipletimeslots. The superframe may be used in a beacon-enabled synchronousnetwork where PDKs can find an RDC and/or CRDC fixed device. Thesuperframe may allow a PDK to efficiently determine if an RDC is presenton any given frequency.

The superframe may be configured such that timeslot 0 (TS₀) is the“beacon timeslot.” Each superframe that is transmitted may start with abeacon timeslot. Further, each timeslot may be equally spaced so that aPDK and RDC can communicate.

Further, it is noted that in one or more embodiments, a superframe maybe of a variable length dependent on the resolution to a timeslot. Theinitial number of timeslots within a superframe may be, for example, 16;but, in one or more other embodiments, a superframe may have a differentnumber of timeslots.

Now referring to FIG. 12, a “coordinator superframe” (c-superframe) maybe formed of multiple superframes. In one or more embodiments, ac-superframe may be generated by a CRDC. A c-superframe may provide oneor more advantages over a superframe. For example, a c-superframe mayprovide better battery management for a PDK, as well as providedistributed superframe and timeslots in a high density networkingenvironment.

As shown in FIG. 12, a c-superframe may have multiple superframes.Because each superframe may have a beacon, as described above withreference to FIG. 11, multiple beacons may be transmitted perc-superframe. This may allow a PDK to quickly determine if it is withina system. A c-superframe may also number the superframes, so that bothan RDC and a PDK can realize their position within the framingstructure.

FIG. 13 shows an overall framing structure of a timeslot as describedabove with reference to FIG. 10, a superframe as described above withreference to FIG. 11, and a c-superframe as described above withreference to FIG. 12.

Beacons

As discussed above with reference to FIG. 11, a beacon may be sent inevery superframe. The beacon is used to alert PDKs (and RDCs when a CRDCis present) of system information and timing of the framing structureemployed. In one or more embodiments, such a configuration may beimplemented using an IEEE 802.15.4 protocol. However, in one or moreother embodiments, communication may occur according to one or moredifferent wireless protocols.

In a single cell configuration in which one RDC is present (shown, forexample, in FIG. 1), the beacon may be transmitted in timeslot 0 of asuperframe boundary. By transmitting the beacon periodically, a PDK maywake up and find the beacon within a short period of time and realizethat it is within some particular network.

In an unsynchronized multi-cell configuration in which multiple RDCs aregeographically located near each other, but no synchronization betweenRDCs is implemented (shown, for example, in FIG. 2), a PDK may stillwake up, detect the presence of the RDCs, and synchronize andcommunicate with each RDC due to the presence of the beacon on each RDC.

In a high density area in which multiple RDCs are present, a CRDC maymost likely be present. In such a configuration, the CRDC may transmitthe beacon, and all RDCs and PDKs in the coverage area of the CRDC alignto the CRDC beacon. The CRDC may send a beacon on each superframe, aswell as a c-superframe and other configuration information to the RDCsand PDKs.

Now referring to FIG. 14, in a single cell configuration (shown, forexample, in FIG. 1), a beacon is periodically output based on a specificnumber of timeslots. Further, in one or more embodiments, the beacon maybe used in accordance an IEEE 802.15.4 protocol, with additional dataattached indicating it is an RDC. At the end of each superframe, theremay exist an additional idle period that allows tolerance in anover-the-air protocol.

After a beacon is transmitted, a PDK may immediately respond provided itfollows the rules of what is know in the art as “carrier sense multipleaccess-collision avoidance” (CSMA-CA). If a PDK finds that the channelis busy in the current timeslot, the PDK may back-off and attempt againto access the RDC in another timeslot following the same rules. In thecase the PDK is not able to communicate with the RDC, the PDK may waitfor the next beacon and attempt again.

FIG. 15 shows a single cell configuration in accordance with one or moreembodiments. As shown in FIG. 15, a single fixed RDC 140 may beconnected to a back-end server (not shown). The single cell system shownin FIG. 15 includes, for example: a computing controller with anoperating system, an application, a back-end server interface, and asystem stack; the RDC 140, which is the gateway for a PDK and performsauthorization (the system stack and RDC 140 together allow a user whohas a PDK to access the application dependent on authorization from theback-end server); and a PDK 142 that includes necessary securityinformation and is within reasonable proximity to wirelessly communicatewith the RDC 140.

An example handshake of the PDK 142 with the RDC 140 is shown in FIG.16. The RDC 140 outputs a periodic beacon based on timeslot 0 of asuperframe. Eventually, a user walks within the coverage area of the RDC140, and the user's PDK 142 detects the beacon from the RDC 140. The PDK142 determines if it is registered to this RDC 140 (or network), and, ifso, responds with a PDK location response. The RDC 140 then detects thePDK location response and performs a link request to the PDK 142. ThePDK 142 then accepts the request by replying with a link grant, and thetwo devices 140, 142 are now in data exchange mode. In data exchangemode, the two devices 140, 142 may transfer specific securityinformation that result in the RDC 140 enabling access to the systemthrough the system stack, computing controller, and/or back-end centralserver.

Periodically, data may be exchanged between the RDC 140 and the PDK 142to ensure that the PDK 142 is still within close proximity of the RDC140. As long as data exchange continues on a periodic basis, theapplication may remain enabled and the user can continue to access theapplication.

After some amount of time, the user walks away from the RDC 140 causingthe data exchange to cease, in which case, the system stack indicates tothe computing controller that the PDK 142 is out of range. The computingcontroller then disables the application to prevent unauthorized access.Regardless of data exchange, the RDC 140 may continue to transmitperiodic beacons to guarantee that other PDKs may gain access to theapplication.

Now referring to FIG. 17, a configuration of a “coordinator beacon”(c-beacon) is shown. The coordinator beacon may be generated by a CRDC,or RDC behaving like a CRDC. As described above, a CRDC may cover alarge geographic area covering a plurality of RDCs and PDKs within thatarea. The c-beacon may be a standard beacon sent in the first timeslotof each superframe as shown in FIG. 17.

A c-beacon, in accordance with one or more embodiments, may haveproperties that are different than those associated with an IEEE802.15.4 standard beacon. For example, the standard c-beacon carries afield indicating the beacon is a c-beacon. Further, a c-beacon, innormal operation, is a unidirectional transmission from a CRDC. Furtherstill, a c-beacon may contain other c-beacon related information: numberof slots in a superframe; number of superframes in a c-superframe; thechannels on which adjacent CRDCs operate; current superframe number;current c-superframe number; site ID; CRDC ID; PDK superframe mask; andPDK timeslot mask.

Further, it is noted that while beacons may be transmitted from a CRDCon timeslot 0 of each superframe, remaining timeslots of a superframemay be left open for unsynchronized communications between PDKs andRDCs. The term “unsynchronized” is used to describe communicationsbetween the PDKs and the RDCs because the RDC and PDK share a commonCRDC beacon, but the PDK may not get synchronized directly to an RDCbeacon. In this manner, the PDK and RDC may appear to represent apeer-to-peer network.

C-beacon information described above relates to configuration fieldsthat allow the system to operate efficiently when using a CRDC. In thecase of, for example, a large scale system, a service provider of thesystem may have knowledge of RDC coverage relative to the CRDC. Thefollowing description provides details of these fields.

A “superframe_len” field may be governed by an IEEE 802.15.4 protocol.The number of slots may be from, for example, 2¹ to 2¹⁴. The number ofslots in a superframe may be used to define the repetition rate for thebeacon.

A “c-superframe_len” field may be used to define a higher layer counterused for extended power savings in a PDK. The c-superframe_len value mayalso define the number of beacons within a superframe. If the superframeis configured to not have a beacon, then this field may be ignored.

Name Type Valid Range Description C- Integer 0 to 15 Defines the numberof Superframe_Len Superframes in a C-Superframe. Number of Superframesis defined as 2^(C-Superframe) ^(—) ^(Len)

A “CRDC_chan_flags” field may be used to indicate to a PDK what channelsare used by adjacent CRDCs.

Name Type Bit Description CRDC_Chan_Flags Binary When any bit in thisfield is set to a 1, an adjacent CRDC is transmitting on that frequency.Binary 0 1 = Channel 0 available 0 = Channel 0 not available Binary 1 1= Channel 1 available 0 = Channel 1 not available Binary 2 1 = Channel 2available 0 = Channel 2 not available Binary 3 1 = Channel 3 available 0= Channel 3 not available Binary 4 1 = Channel 4 available 0 = Channel 4not available Binary 5 1 = Channel 5 available 0 = Channel 5 notavailable Binary 6 1 = Channel 6 available 0 = Channel 6 not availableBinary 7 1 = Channel 7 available 0 = Channel 7 not available Binary 8 1= Channel 8 available 0 = Channel 8 not available Binary 9 1 = Channel 9available 0 = Channel 9 not available Binary 10 1 = Channel 10 available0 = Channel 10 not available Binary 11 1 = Channel 11 available 0 =Channel 11 not available Binary 12 1 = Channel 12 available 0 = Channel12 not available Binary 13 1 = Channel 13 available 0 = Channel 13 notavailable Binary 14 1 = Channel 14 available 0 = Channel 14 notavailable Binary 15 1 = Channel 15 available 0 = Channel 15 notavailable

A “superframe_cnt” field may be used to define a current superframe (orbeacon) count within a c-superframe. If the superframe is configured tonot have a beacon, then this field may not be transmitted.

Name Type Valid Range Description Superframe_Cnt Integer 0 to 65535Defines the current Superframe count.

A “c-superframe_cnt” field may be used to define a current c-superframecount. If the superframe is configured to not have a beacon, then thisfield may not be transmitted.

Name Type Valid Range Description C- Integer 0 to 65535 Defines thecurrent Superframe_Cnt C-Superframe count.

A “PDK_sf_ts_msk” field may be used to define the bits of a superframecount and the timeslot count to use for PDK superframe and timeslotsequencing while in a tracking mode. If the superframe is configured tonot have a beacon, then this field may not be transmitted.

Name Type Valid Range Description PDK ®_SF_TS_Msk Defines which bits areto be used for determining PDK ® superframes and timeslots tocommunicate with an RDC during location tracking. Superframe Mask Binary0000000000000 Defines the to Superframe mask 1111111111111 1 = enablebit 0 = mask bit Timeslot Mask Binary 000 to 111 Defines the Timeslotmask 1 = enable bit 0 = mask bit

The PDK_sf_ts_msk value may be used in conjunction with a portion of theservice provider unique PDK identification value and may be used todetermine the exact superframe and timeslot the PDK is permitted totransmit a location identifier back to the RDCs. The necessary logic andvariables required to perform this operation are illustrated in FIG. 18.

Further, in one or more embodiments, to set the mask value of aparticular PDK, a “set_pdk_msk_val” function may be used. The mask maybe used over the superframe and timeslot counts and service provider'sPDK ID to determine the superframe and timeslot the PDK is active on inthe framing structure. In other words, the set_pdk_msk_val function maybe used to set a mask for the PDK in an effort to establish at whattimes the PDK can communicate with an RDC. The function may return apass or fail indication to indicate whether the mask has beensuccessfully set. Conversely, to obtain the mask value being used by aparticular PDK, a “get_pdk_msk_val” function may be used to retrieve thecurrent PDK superframe and timeslot mask parameters.

Using, for example, the masking approach described above, individualclient devices (e.g., PDKs) within a given cell (e.g., an RDC's wirelesscoverage area) may be addressed via real-time re-provisioning oncommand. Thus, in other words, by reserving time slots for both clientdevice transmission and reception (based on masks established by thenetwork), client transmission and reception time slots may beefficiently coordinated to reduce collision likelihood and allow fortiered client access, assignment of specific classes, and/or targetingan individual user for preferential, non-contended system access.Further, in one or more embodiments, bit masks may be changed to includeor exclude specific users (or classes of users). Still further, in oneor more embodiments, bit masks may be changed to dynamically alteraccess to the network by users or classes of users as traffic load onthe network changes. Moreover, it is noted that once a specific clientexits the network, previously reserved time slots of that client may bereassigned to one or more other client devices in the network.

To provide an example, there may be multiple client devices (e.g., PDKs)in proximity of a particular fixed reader device (e.g., an RDC). Each ofthese client devices, other than providing a location response, mayrequest some data exchange with the reader device in order carry out asecure transaction. In an effort to reduce collision and coordinate thetime slots that each client device “talks” with the reader device, amask may be communicated to each client device to set the times at whichthe client device is to communicate with the reader device. Further,certain ones of the client devices may be afforded some level ofpriority, in which case the masks would be set accordingly. For example,masks may be set according to a class of a user of a PDK or to a classof the PDK itself. To facilitate such differentiation, priority level ortier level data may be present in an RDC or CRDC to be used when settinga mask for a particular client device or group thereof. Thus, in such amanner, there is provided a technique for dynamic real-time tieredclient access. Moreover, it is noted that in one or more embodiments, aCSMA-CA mechanism may be implemented as a backup approach to facilitatedata exchange.

Further, in one or more embodiments, utilization of a tiered accesssystem to transfer and receive data to/from a specific user or clientdevice anywhere within a wireless network may allow for simultaneouslyoperating network-wide two-way communications without altering thenetwork. Thus, in other words, although one or more embodiments relateto an autonomous wireless proximity sensing and data transfer network,such a network may be used to notify, page, or transfer data possiblyunrelated to one or more of the applications which a majority of theclient devices on the network are using (or typically use) (suchapplications being for the purposes of, for example, tracking, accesscontrol, and/or digital rights management). In another example, anetwork device may be able to associate a PDK ID to a particular userand then provide messaging capability based on the identity of the user.Thus, in this case, one or more embodiments may be combined with tieringto provide multiple messaging levels for different users.

The ability to assign tiers to the network may also enable low latencyresponses from targeted client devices. Accordingly, by integratingfeatures into the client device that may take advantage of a two-waynetwork capability, a system in accordance with one or more embodimentsmay allow for the simultaneous communication and control of externaldevices via real-time client command along with a general purpose lowdata rate two-way network.

Continuing with the description of c-beacon information in accordancewith one or more embodiments, a “site_ID” field may carry a value thateach CRDC transmits to all PDKs and RDCs within a coverage area of theCRDC. The site_ID value allows a PDK to determine if it can access thecurrent site or if it needs to request permissions to access the site'snetwork.

Name Type Valid Range Description Site_ID Integer 0 to 65535 Defines thecurrent sites ID.

A “CRDC_ID” field may carry a value that each CRDC transmits to all PDKsand RDCs within a coverage area of the CRDC. The CRDC_ID may be used,for example, for geographical reference.

Name Type Valid Range Description CRDC_ID Integer 0 to 65535 Defines thecurrent CRDC ID.

Now turning to a description of a use of a c-beacon, reference is madeto FIGS. 19 and 20. A location tracking example in accordance with oneor more embodiments is shown in FIG. 19. There are various differenttypes of devices in the system 150 shown in FIG. 19. First, there is aCRDC 152 that may provide system information and facilitatesynchronization for RDCs and PDKs. The system 150 also has RDCs 154,156, which listen for PDKs and report the status of each PDK foundwithin its respective cell 158, 160. The system 150 further includes aPDK 162 that is mobile and capable of being moving around. Further, thesystem 150 has a server 164, which is the back-end computer thatcontrols the CRDC 152, acquires information from the RDCs 154, 156, andmay provide a graphical representation to monitoring personnel via acomputer monitor (not shown).

Accordingly, FIG. 19 shows how location tracking of a PDK is possibleand a handshake between different parts of the system 150. A handshakeexample of PDK location tracking in a CRDC configuration is shown inFIG. 20. The CRDC 152 periodically broadcasts a beacon in timeslot 0 ofeach superframe. Enabled client devices within the CRDC cell boundaryreceive the beacon. After the PDK 162 receives the beacon and determinesthat the beacon is from a system that it is registered to, the PDK 162broadcasts a PDK location response that is received by the RDCs 154,156. Both RDC 154 and RDC 156 receive the response, log the PDK ID, thesignal quality metrics, and timestamps the information. The packet ofinformation may then be sent to the server 164, where the server 164processes the data from each RDC 154, 156 and performs a locationestimation that may then be presented to an operator. At the beginningof the next superframe, the beacon is again transmitted and the processis repeated until the PDK 162 can no longer be heard due to it being outof range.

Now referring to FIG. 21, it shows a system 170 in which both PDKs andRDCs are coordinated within a CRDC cell boundary. Because, in one ormore embodiments, RDCs are stationary devices and may occasionally berelocated, the RDCs may be initially coordinated by manually configuringboth timeslots and frequencies they operate on.

As shown in FIG. 21, one CRDC cell 172 and 6 smaller RDC cells 174, 176,178, 180, 182, 184 exist. The CRDC cell 172 provides ubiquitous coverageto the RDC cells 174, 176, 178, 180, 182, 184. Each RDC cell 174, 176,178, 180, 182, 184 overlaps its adjacent RDCs in a manner resulting in ahigh rate of collisions if the RDCs 186, 188, 190, 192, 194, 196 attemptto communicate with a PDK 198 on the same channel. It is envisioned thatall the RDCs 186, 188, 190, 192, 194, 196 could be on differentfrequencies, but then the PDK 198 would be required to access eachfrequency for some duration, resulting in reduced battery life. Toeliminate interference between the RDCs 186, 188, 190, 192, 194, 196 andprovide the PDK 198 with an efficient means to conduct securetransactions, the system 170 shown in FIG. 21 may be used.

To optimize the system 170 for battery conservation of the PDK 198, eachRDC 186, 188, 190, 192, 194, 196 may be provided with a dual RF physicalinterface. The primary interface is for monitoring a c-beacon and thePDK 198 located in close proximity, and to signal the PDK 198 to switchto another channel for further communications with that particular RDC.In this case, the CRDC (not shown) may transmit c-beacons, whereby allRDCs and PDKs will gain timing synchronization.

Based on the configuration shown in FIG. 21, the c-beacon fieldsdescribed above may be configured as follows: superframe_len=4 (2⁴=16timeslots); c-superframe_(—)len=4 (2⁴=16 superframes);CRDC_chan_flags=b0000000000000010 (most significant bit to leastsignificant bit—CRDC channels); PDK_sf_ts_msk=b000000000011111 (mask allbut 2 least significant bits of the superframe count and don't mask anytimeslot bits); site_ID=0x1234 (arbitrary site identification); andCRDC_ID=0x0001 (arbitrary CRDC_ID).

Another piece of information that may be inherent to the PDK is a uniqueservice provider PDK ID. The unique service provider PDK ID is locatedin the PDK and may be compared with the superframe and timeslot countprior to applying the mask, but may not affect the superframe andtimeslot counts from a time reference standpoint. In this case, theunique service providers PDK ID for this PDK may be equal to 0x0003.

Using the above described values for the c-beacon, the following systemattributes result (the superframe is 16 timeslots long, so once out ofevery 16 timeslots, a c-beacon is created allowing the PDK to determineif a system with the correct system ID exists): the c-superframe lengthis set to 16; the CRDC_chan_flags indicate to the PDK the number of CRDCchannels available in the system; the PDK_sf_ts_msk indicates which bitsto logically AND with the superframe and timeslot count to determinewhich slots to respond on (in this case, the PDK_sf_ts_msk is a hexvalue of 0x001F that is ANDed with the superframe and timeslot countresulting in one response timeslot); and the site_ID and CRDC ID arearbitrary values and may be left to the service provider for selectingunique identification values.

Using the above described exemplar system configuration information andhaving a PDK with a unique service provider ID of 0x0003, FIG. 22 showshow the PDK may operate in a CRDC framing structure. As shown in FIG.22, the c-superframe_len is set to 16—thus, the superframe count countsfrom 0 to 15 and then starts over at 0. Each superframe then includes 16timeslots of which the first timeslot is timeslot 0 and includes thebeacon. The superframe_len is also set to 16—thus, there are 16timeslots for each superframe. Again, the timeslots are numbered from 0to 15, and restart at 0 for each superframe.

In one or more embodiments, based on the parameters set by the systemand the unique service provider PDK ID, the PDK may periodicallytransmit a PDK location response in timeslot 3 of each superframe on amodulo 4 basis. This causes the PDK to respond in timeslot 3 ofsuperframes 0, 4, 8, and 12 of a c-superframe. It is noted that the PDKmay follow the CSMA-CA standard and if the PDK cannot respond in itstimeslot, it may wait for its next designated superframe and timeslot torespond.

If an RDC requests to begin communication with a PDK, the RDC mayimmediately respond on the next even timeslot, which, in this case, istimeslot 4. Any RDC may respond, but RDCs may have to use the CSMA-CArule prior to responding to the PDK transmission. If an RDC beginscommunications with a PDK, the following timeslot may be used toinstruct the PDK to go to another channel, where bi-directionalcommunications may commence.

Further, in one or more embodiments, an active superframe may occur whenunmasked bits in the superframe count equal the corresponding unmaskedbits in the unique service providers PDK ID. In this case, thesuperframe mask is a value of 0x003 and the unique service provider PDKID is 0x0003.

With this information, the following calculation occurs:

$\begin{matrix}{b\; 000000000000} & {{superframe}\mspace{14mu} {{count}\mspace{14mu}\left\lbrack {15\text{:}4} \right\rbrack}} \\{{xor}\frac{b\; 000000000000}{b\; 000000000000}} & \begin{matrix}{{unique}\mspace{14mu} {Service}\mspace{14mu} {Provider}\mspace{14mu} {PDK}^{®}{{ID}\left\lbrack {14\text{:}3} \right\rbrack}} \\{{result}\mspace{14mu} {of}\mspace{14mu} {xor}\mspace{14mu} {function}}\end{matrix} \\{{and}\mspace{14mu} \frac{b\; 000000000111}{b\; 000000000000}} & \begin{matrix}{{Superframe}\mspace{14mu} {{Mask}\mspace{14mu}\left\lbrack {11\text{:}0} \right\rbrack}} \\{{result}\mspace{14mu} {of}\mspace{14mu} {AND}\mspace{14mu} {function}}\end{matrix} \\\frac{{nor}\mspace{14mu} {all}\mspace{14mu} {bits}}{1} & {{result}\mspace{14mu} {is}\mspace{14mu} {true}}\end{matrix}$

As shown above, a portion of the superframe count is exclusive-ORed witha portion of the unique service provider PDK ID. The result of theexclusive-OR is all 0's. Then, the superframe mask is ANDed with theresult of the exclusive-OR function. The AND operation also results inall 0's. The result of the AND function is then compared to zero byNORing all of the bits together and results in a 1 or “true” output,indicating the bits compared between the superframe count and the uniqueservice provider PDK ID are a match.

An active timeslot occurs when the unmasked bits in the 3 mostsignificant positions of the timeslot count equal the unmasked bits inthe unique service provider PDK ID's 3 least significant bits and thetimeslot count least significant bit is a 1 (the PDK transmits on oddframes). In this case, the timeslot mask is a value of 0x7 and theunique service providers PDK ID's 3 least significant bits are 0x3.

With this information, the following calculation occurs:

$\begin{matrix}{b\; 011} & {{timeslot}\mspace{14mu} {{count}\mspace{11mu}\left\lbrack {3\text{:}1} \right\rbrack}} \\{{xor}\frac{b\; 011}{b\; 000}} & \begin{matrix}{{unique}\mspace{14mu} {Service}\mspace{14mu} {Provider}\mspace{14mu} {PDK}^{®}{{ID}\left\lbrack {2\text{:}0} \right\rbrack}} \\{{result}\mspace{14mu} {of}\mspace{14mu} {xor}\mspace{14mu} {function}}\end{matrix} \\{{and}\mspace{14mu} \frac{b\; 111}{b\; 000}} & \begin{matrix}{{Timeslot}\mspace{14mu} {Mask}} \\{{result}\mspace{14mu} {of}\mspace{14mu} {AND}\mspace{14mu} {function}}\end{matrix} \\\frac{{nor}\mspace{14mu} {all}\mspace{14mu} {bits}}{1} & {{result}\mspace{14mu} {is}\mspace{14mu} {true}}\end{matrix}$

As shown above, the timeslot count is exclusive-ORed with a portion ofthe unique service provider PDK ID. The result of the exclusive-OR isall 0's. Then, the timeslot mask is ANDed with the result of theexclusive-OR function. The AND operation also results in all 0's. Theresult of the AND function is then compared to zero by NORing all of thebits together and result in a 1 or “true” output, indicating the bitscompared between the timeslot count and the unique service provider PDKID are a match.

The last portion of the calculation that needs to be completed (asdescribed above) is to verify the last bit of the slot count is a ‘1,’indicating an odd slot. If the unmasked superframe and timeslot bits donot match the appropriate unique service provider PDK ID, the resultswill be “false” and no match will occur. In the examples describedabove, the superframe mask was set to unmask the 2 least significantbits of the superframe count to show that it is possible to allow a PDKto come up more frequently than the c-superframe count. By increasingthe superframe mask to 4 bits, this example would allow the PDK torespond once per c-superframe (because the c-superframe was set to 16)and the modulo for the mask would be 2⁴, or 16.

The timeslot mask may be set to allow all timeslot bits to be correlatedto determine the timeslot, allowing the PDK to respond once persuperframe. Further, it is noted that it may be possible to mask some ofthe timeslot bits to increase the number of times a PDK can respondwithin a superframe.

In one or more embodiments, a PDK may periodically wake up to determinewhether it is within a particular system. Upon a periodic wake up, thePDK will detect a c-beacon indicating that the particular system ispresent, along with system information. The PDK will collect the systeminformation and determine the current superframe count of ac-superframe. The PDK may also put parameters (e.g., PDK_sf_ts_msk) inplace to start immediate battery save in the system.

Based on an approximate time, the PDK may awake just prior to where itbelieves the next superframe is that it should communicate on, and willlisten for the beacon and begin responding with the PDK locationresponse message.

As shown in FIG. 23, a CRDC may update its system information on eachsuperframe and output a c-beacon with current information to all PDKsand RDCs. The PDK then waits for its predefined superframe and timeslotand responds. This scenario continues to occur until the PDK leaves theCRDC cell or an RDC responds to the PDK.

As described above, a CRDC may continue to output a c-beacon, and thePDK periodically awakes to re-align to the superframe and respond to thec-beacon. If a RDC is present and wants to communicate with the PDK, theRDC may respond on the even timeslot immediately available after thePDK's transmission. FIG. 24 shows how the communications handshakebetween the PDK and RDC may occur. Particularly, FIG. 24 depicts oneCRDC, one RDC with two active channels (i.e., using two wireless links),and a PDK.

With continued reference to FIG. 24, the CRDC outputs a c-beacon ofwhich the RDC and PDK are aligned. The PDK realizes that the c-beacon'ssuperframe count correlates to its internal predefined active superframecount, and then waits for the appropriate timeslot to respond to thesystem with its PDK location response. When the PDK responds on thec-beacon channel, the RDC detects the response and determines that itwants to associate with the PDK. The RDC then creates a messageincluding its own RDC ID, the PDK's ID, a command to switch to channel2, and a predicted superframe and timeslot the PDK should respond on.The PDK, in response, switches to channel 2 and waits for theappropriate superframe and timeslot count and transmits a link requestalong with its PDK ID and the destination RDC ID. The destination RDCthen receives the information and responds back to the PDK with a linkgrant. Communications may now begin between the two devices exchangingthe appropriate information to maintain the PDK-RDC link. To maintainsynchronization, the RDC may define the periodic communication frequencywith the PDK and will periodically generate a request to the PDK toexchange information. The PDK may then reconfigure its wake parametersto that of the RDC, as the RDC is maintaining superframesynchronization.

It is noted that in one or more embodiments, such as that describedimmediately above, the RDC may have a dual physical interface,maintaining synchronization with the CRDC on channel 1, whileassociating with one or more PDKs on channel 2. The physical interfaceconnected to channel 1 provides timing to the physical interface onchannel 2.

Further, because the RDC may have intelligence on both channels, the RDCmay provide coordination of PDKs that it wants to redirect to channel 2and PDKs that are on channel 2. More specifically, the RDC may move thesuperframe and timeslot that a PDK communicates to the RDC on, ifanother PDK with the same timeslot requirements is present on channel 1and the RDC wants to associate with it.

CRDC Slot and Channel Coordination

In one or more embodiments, a CRDC may be configured via a remoteconnection to a server or automatically. Using remote configuration, theserver may have knowledge of RDCs located within the CRDC cell boundaryand may perform optimum channel and timeslot planning.

When the CRDC is configured automatically, the CRDC may scan allchannels and find the channel with the least interference. The CRDC maythen begin transmitting a c-beacon.

All RDCs located within a CRDC cell boundary may place the CRDC into itslocal CRDC database and complete scanning all other channels todetermine if other CRDCs are present. In the case multiple CRDCs arefound, the RDC may communicate to each CRDC its findings if possible.

Each CRDC may coordinate through that RDC to setup channels andtimeslots to prevent interference between CRDCs. In one or more cases,the CRDC may select another channel and disregard the timeslotinformation because CRDCs may not be required to be timing coordinated.Further, it is noted that any RDC that detects more than one CRDC mayselect the CRDC with the best signal quality.

Protocol Operation

The following describes a protocol operation in a single cellcoordinated system using a CRDC configuration. In one or moreembodiments, there may be additional protocol fields required to allowinteroperability between single cell and coordinated multi-cellconfigurations. Such additional protocol fields may provide informationto RDCs and PDKs that are located in near proximity to each other, orwithin a CRDC cell.

A network format field may provide information to RDCs and PDKs relatedto the specific configuration the single cell or coordinated cells areoperating in.

Name Type Valid Range Description Proxense_NWK_FMT Defines the networkconfiguration employed for an RDC or CRDC Network Type Integer 0 to 7Defines the network type employed. 0 = Single Cell 1 = Multi-Cellcoordinated 2 = Multi-Cell coordinated w/ CRDC 3-7 = RFU Beacon SourceBinary 0 or 1 Defines the source of the beacon. 0 = RDC 1 = CRDCBroadcast Flag Binary 0 or 1 Defines if this is a broadcast message. 0 =not broadcast 1 = broadcast Timeslot Select Integer 0 to 3 Defines howan RDC and PDK ® utilize timeslots in a system. 0 = no timeslotsassigned 1 = 802.15.4 Beacon enabled 2 = PDK ® uses even timeslots/RDCuses odd timeslots 3 = PDK ® uses odd timeslots/RDC uses even timeslots

A network type value may be used to define a cell network configuration.An RDC receiving this field may determine its operating mode based onthis field. If an RDC receives a network type of single cell fromanother transmitting RDC, the RDC may tune to another channel to avoidcollisions with the other RDC. If the RDC receives a network type ofcoordinated multi-cell, the RDC may join the multi-cell coordinatedsystem. If the RDC receives a network type of coordinated multi-cellwith CRDC, the RDC may join the CRDC network if the site ID is the same.

The PDK may also receive this information and adjust its operating modeto comply with the system employed. If the PDK detects the system to besingle cell, the PDK may conform to more of an IEEE 802.15.4 protocol,communicating with the RDC in such a manner. The PDK may be aware thatit is required to communicate with a specific RDC ID. The PDK may stillhave the capability to periodically monitor other channels for otherRDCs in the local vicinity.

If a PDK detects the system is multi-cell coordinated, the PDK mayreceive further information indicating the other RDC frequencies in usein the coordinated network and may adjust its system operatingparameters appropriately.

If the PDK determines the system is multi-cell CRDC coordinated, the PDKmay adjust its operating parameters appropriately. The PDK mayacknowledge that a c-beacon is present and may broadcast a PDK locationresponse. The PDK may also understand that an RDC with a different IDother than a CRDC ID may attempt to communication with the PDK.

A “beacon source” field may indicate to all RDCs and PDKs in the generalproximity of the type of beacon being generated. This information may behelpful, specifically when in a multi-cell CRDC system, and allows RDCsto distinguish between RDC generated beacons and CRDC generated beacons.

A “broadcast flag” may indicate to all recipients that the informationbeing sent is intentionally being broadcast to all devices that canreceive particular protocol information. In some cases, a message thatmay be sent to a specific PDK may also be broadcast to all PDKs. Thisflag assists the PDKs in determining how to treat the information.

A timeslot select field may indicate to PDKs and RDCs how the timeslotsare configured in the system. This field may further be used todetermine if an RDC and PDK are to use even-based or odd-based timeslotsfor responding.

In order for an RDC or PDK to determine that a network is of aparticular type, a network identifier may be used.

Name Type Valid Range Description Proxense Network ASCII Proxense An 8byte ASCII value Identifier identifying the network to be a Proxensenetwork

Single Cell Standalone Operation

The following description is based on, for example, an electronic game(such as one that may be found in a casino) operating in a single cellconfiguration and attached to some central server. However, it is notedthat as described above, examples of applications and uses are forpurposes of illustration and clarity and do not limit the presentinvention.

The game has a resident RDC integrated into its hardware and has asystem stack that allows access to the game. The RDC may be attached tothe game controller, or may use a separate controller containing thesystem stack and an interface to the central server.

For clarity, any interactions between the RDC and the server will assumethat the reader understands that the system stack and server interfaceapplication are taken into account in the transactions described.

This description covers the basic initialization of the system andRDC/PDK interactions that occur while associated in the system. Thefollowing concept defines how, for example, a casino game in a singlecell configuration may be setup with multiple player PDKs. Upon powerbeing applied to the game and RDC, the internal circuits perform aninitialization function and the operating system and game load. The gameand RDC indicate to the central server that power has been applied. Thesystem stack also loads in the controller and the RDC device is startedin a static mode with its transceiver disabled. The RDC may first beconfigured to operate in a single cell environment and requires somebasic setup requirements as will be understood by those skilled in theart.

The server places the game into a particular configuration mode where itcan set the RDC for auto-discover mode, or may choose to manuallyconfigure parameters related to the RDC's operation. If the serverplaces the RDC into auto-discovery mode, the RDC generates a randomvalue for its RDC ID and its password, which is then passed back to theserver.

If the server chooses to manually setup the RDC, the server may supplythe RDC ID and password. The server may also send the network topologyand preferred channels the RDC will operate on. The central server maythen send its site information to the game controller, which is alsoused by the RDC to allow access to the game. Once the server hasconfigured the RDC, the server will enable the RDC and game.

The configuration information shown in the table immediately below maybe used for RDC provisioning.

Site ID 0x0100 Generic value for a single cell RDC. RDC ID 0x1234Arbitrary value C-Superframe Length 32 2.5 second superframe period forPDK ® wakeup Superframe Length 16 16 slots per superframe ProxenseNetwork Proxense Defines system as a Identifier Proxense system ProxenseNetwork Format Network Type 0 Single Cell Beacon Source 0 RDC BroadcastFlag 1 Broadcast Timeslot Select 1 802.15.4 timeslots

In this configuration of a standalone RDC (without a site identifier):the site ID is set to 0 because this is a single cell RDC and no siteinformation is required; the RDC ID is arbitrarily selected; thec-superframe length is set to 32 superframes indicating to the PDK thatit needs to wake up once every 32 superframes in superframe 0 toexchange information with the RDC to remain associated; the superframelength is set to 16, which may be the standard value for a superframe ina particular system; the network identifier allowing a PDK to understandthe beacon is from an enabled RDC; and the network format indicates oneor more of several parameters (e.g., the network type indicates to thePDK that it is a single cell network—indicating to the PDK no other RDCis associated with this RDC and therefore no other RDC should beattempting access on this channel, the beacon source indicates to thePDK that the beacon is from an RDC and not a CRDC device, the broadcastflag indicates to the PDK that the message is being broadcast from theRDC, the timeslot select field indicates that a PDK should use IEEE802.15.4 beacon-based handshaking with the RDC). The RDC then scans allchannels (or preconfigured channels) to determine if any other IEEE802.15.4 or client devices are present or if any other interference isfound.

With the pre-configured information, the RDC then begins beacontransmission on the least interfered channel with a c-superframe count,superframe count, and the information located in the table immediatelydescribed above.

Now, as shown in FIG. 25, in standalone mode, the RDC will continue totransmit beacons on every superframe. The information in the tableimmediately described above may be transmitted along with the superframecount in every superframe to allow the PDK to configure and synchronizewith the system. When the superframe count is the superframe lengthminus one, the superframe count will start counting from 0 for the nextc-superframe.

At the end of each beacon transmission, a frame check sequence (FCS) maybe appended as part of the IEEE 802.15.4 physical layer. The FCSprovides protection for the data carried in the frame. Because thebeacon may not occupy the entire frame (or timeslot), hashed lines areshown indicating additional idle time between the FCS and IFS. The RDCmaintains the beacon transmission until the RDC is disabled or power isremoved. At this point in the sequence of operations, there are no PDKsregistered with the RDC, so no PDK can gain access without registeringand receiving authorization from the RDC.

Again referring to the casino game example described above, a playerwith a PDK that has not yet been registered to the property enters theRDC cell. The PDK is in battery save mode and periodically wakes uplooking for a network. As shown in FIG. 26, the PDK starts in a deepsleep state. The wakeup timer eventually expires, causing the PDK toenable and tune its receiver. The PDK then monitors the channel that ittuned to for a period of one 17 timeslots (one superframe plus oneslot), or approximately 83 milliseconds. The 17 timeslot limit is basedon a superframe of 16 timeslots, and the fact that the PDK, upon initialreception, could miss the beginning of a beacon. The additional slotprovides the overlap necessary to guarantee reception of a beacon if oneis present.

If no beacon is detected, the channel number is incremented (modulo 16)and the PDK resets its wakeup timer and returns to deep sleep mode. If abeacon is detected, the PDK checks for a network ID and if one is notfound, it again increments the channel number, resets its wakeup timer,and returns to deep sleep mode. If the network ID is detected, the PDKattempts to establish a communications link with the RDC. At this point,the PDK has found a single cell network on channel 1 with an RDC ID of0x1234, and the RDC is in broadcast mode indicating that it isattempting to gain the attention of any PDKs in the local proximity.

Now referring to FIG. 27, in which an authorization denial handshake isshown, the RDC broadcasts its beacon with the information as describedabove. The PDK detects the beacon in broadcast mode, determines thenetwork configuration and RDC ID and returns a PDK location responsewith the RDC ID and PDK ID included. The RDC detects the response fromthe PDK and alerts the central server that a PDK with a public ID of0x9876 (arbitrary) wants to attach and enable the game for play. In themeantime, the RDC may immediately respond back to the PDK indicatingthat the PDK should wait for authorization. This keeps the PDKresponding to beacons as defined by the fields located in the beaconuntil the beacon is no longer present (i.e., the PDK is no longer in theRDC cell), or until a response is returned by the RDC.

The central sever, in conjunction with the system stack, may then chooseto not recognize a particular PDK's public ID that has not yet beenregistered to the property. The RDC continues to output its beacon. Uponthe next wakeup and PDK location response from the PDK, the RDC detectsthe PDK ID and, within its database, looks up the authorizationparameters for this PDK. It determines that authorization has beendenied and sends an “authorization deny” command to the PDK. In the casethat a particular PDK is not recognized or not authorized, anotification may sent to a staff member of the property to register auser of the PDK, and/or, in one or more embodiments, one or moremachines may be used to prompt the user to register with the property.

The PDK temporarily stores the RDC ID in its local memory with a flagindicating that it shall no longer respond to this RDC ID. The PDK maythen go back into battery save mode and periodically scans all channelsas previously described above with reference to FIG. 26.

Still referring to FIG. 27, because the PDK may not constantly be awareof its geographical location, the PDK may continue to monitor eachchannel and decode each beacon. Eventually, the PDK returns to thechannel that the RDC is still transmitting beacons on, decodes thebeacon information including the RDC ID, and determines that it is notto respond.

Further, the PDK may maintain the RDC ID in its local database until thebeacon is no longer present during scanning, at which time the RDC ID isremoved from the database. The period of time that the beacon is absentbefore removing the RDC ID from the database may be determined duringprior system testing.

Assuming the RDC beacon is absent for a given period of time indicatesto the PDK that the PDK has left the RDC cell. Upon the next detectionof that RDC beacon, the PDK may again attempt to gain access to the RDCas shown in FIG. 27. The difference this time is the PDK ID is in theRDC's local database and the RDC may deny authorization without alertingthe host system. The PDK may then operate as previously described afterauthorization has been denied.

In one or more embodiments, once a host system grants authorization forthe PDK to operate within the property, then one or more differentscenarios may exist. In one scenario, the RDC may transmit the PDK ID aspart of the beacon transmission, alerting the PDK that the RDC wants tocommunicate, and the PDK may then respond with a PDK location response.In another scenario, the PDK returns to the RDC cell, and afterdetection of the beacon (with or without the PDK ID), it returns the PDKlocation response. In either case, after the RDC detects the PDKlocation response with the PDK's public ID, the RDC then issues a linkrequest attempting to initiate a link between the RDC and PDK. FIG. 28,for example, shows a handshake between the RDC and PDK for a PDKauthorization grant.

As shown in FIG. 28, the RDC may broadcast the beacon on everysuperframe. Although not shown, the superframe counter value is alsoincluded, which the PDK may use for battery conservation. The beacon maybe broadcast in one of more different methods. The system may have justauthorized a PDK and the beacon includes the PDK's public ID for aperiod of time or, in another method, the beacon may be transmittedwithout the PDK's public ID. As described above, if the PDK is in theRDC cell and has deactivated its response, when the PDK detects its IDin the beacon, it may reactivate its response to the RDC and transmitboth the RDC ID and PDK public ID in its PDK location response.

If the PDK has just re-entered the RDC cell and detects the RDC beacon(with or without the PDK's public ID), the PDK may again respond withthe RDC ID and its own PDK public ID. The RDC may then detect its RDC IDand the PDK public ID and immediately sends a link request to the PDKwith both its RDC ID and the PDK's public ID indicating it wants toinitiate a link with the PDK. The PDK may detect the request and respondwith a link grant with both IDs included. The RDC and PDK may enter intoassociation mode and then provide data exchange on a periodic basisinsuring the PDK remains in range of the RDC. This periodic dataexchange may occur based on parameters previously described above.Interleaved between the data exchange may be beacons that other PDKs mayuse to access the RDC. Eventually, the RDC may terminate the dataexchange based on inactivity, as determined by the server, or as basedon the PDK leaving the RDC cell, in which case the RDC realizes the PDKis no longer in range.

Further, it is noted that due to radio interference issues that mightoccur in wireless systems, the RDC and PDK may not relinquish the linkbased on the lack of a single data exchange. Because the RDC is notnecessarily battery limited, the RDC may continue to monitor alltimeslots in a superframe with the exception of those frames ittransmits on. In contrast, it is noted that a PDK is likely batterylimited and therefore may need to intelligently choose when to receiveand transmit.

In the case the RDC and PDK lose communications during the predefinedperiod they are attempting to communicate, both devices may have equalknowledge of such an event. Because the PDK is battery limited, the PDKmay try on the next available timeslot to regain synchronization withthe RDC. After a period of time in the RDC, or a predefined number ofattempts by the PDK, the link may be considered lost.

Referring again to the casino game example, in one or more embodiments,an enabled single cell game facilitates multi-player access via thecentral server. Individual players may consecutively play the gameprovided they have the appropriate PDK, or in some instances, multipleplayers may be able to simultaneously play the game. The RDC allows forsimultaneous multi-player access, so long as the central server supportsand authorizes such play.

In the case where multiple PDKs may simultaneously access an RDC, theRDC may provide superframe coordination information to the PDKs tointerleave them in a manner to avoid contention between RDC and PDKcommunications. For example, as shown in FIG. 29, the RDC may assign asuperframe and timeslot count to each PDK accessing the RDC. Throughlink setup and data exchange, the RDC may direct the PDK to use aspecific superframe and timeslot (or multiple superframes and timeslots)for periodic data exchange. By using such a technique, the RDC may alterthe wakeup superframe for each PDK and may efficiently distribute themso as to reduce contention between the PDKs. Because the PDKs are givena specific superframe and timeslot (or superframes and timeslots), thePDK is required to wake up during that superframe(s) and timeslot(s) tocommunicate with the RDC. This technique, in turn, may greatly extendPDK battery life.

Now referring to FIG. 30, it shows a configuration in which multiplegames operating as single cell RDCs are co-located in close proximitywith overlapping RDC cell coverage. In such a configuration, each RDC200, 202 may not be aware of the presence of the other RDC 200, 202 buta PDK 204 that resides in the area of overlapping coverage may detectthe presence of both RDCs 200, 202. A technique of restricting orallowing PDK access to one or more of the RDCs 200, 202, and thetechnique of enabling game play may depend on the system stack for thatspecific configuration.

In a configuration where multiple RDCs are co-located without theknowledge of each other, and where a PDK is registered to both RDCs, atechnique of determining and gaining access to each RDC may be enforced.There are one or more possible scenarios that may occur. For example, inone case, a player may desire simultaneous access to a game and anotherdevice, such as a drink or food purchase device, with both beingphysically located near each other and without disrupting the game play.In another case, a player may be registered to multiple RDCs, but wantsto associate with one RDC at any given time.

In addition to an RDC granting permission to the PDK for access, the RDCmay also dictate to the PDK the number of simultaneous associationsallowed. The purpose of defining the number of associations permittedmay reduce the possibilities that the PDK can simultaneously associatewith and enable two or more RDCs within close proximity of each other.This may prevent unauthorized use of a player's PDK on adjacent enableddevices, thereby disallowing a player from using another player'sidentity. The capability of configuring the number of associations for aparticular RDC may be implemented in a system stack and controlled bythe attached controller's application.

Referring again to the case where a player desires simultaneous accessto a game and another device, a PDK may be capable of associating tomultiple RDCs based on the physical limitation of the maximum number ofsimultaneous connections the PDK can handle and based on the number ofassociations the RDC permits.

Further, it is noted that under the conditions the PDK is associatedwith more than one RDC, the PDK may relay information back to each RDCindicating its timing relative to the other RDC. This information may beimportant in the event a single PDK is associated with more than one RDCbecause the clock frequency error between the RDCs may cause eventualtiming drift that will eventually cause timeslot and superframe overlapand prevent the PDK from communicating with both units on a periodicbasis. This situation is also noted: where two PDKs are associated withthe same RDC and each PDK is also associated with a different secondRDC. Additionally, each of the second RDCs may also have other PDKsassociated with them that are also associated with even different RDCs.Eventually, such an uncoordinated system may appearing like a meshnetwork. A system of such complexity may require a CRDC to be used toaddress synchronization issues.

As to the case where a player may be registered to multiple RDCs, butwants to associate with one RDC at any given time, there may one or moretechniques that may be employed to control how a PDK associates with aspecific RDC. In one way, a PDK is associated with a single RDC. Usingthis technique, the PDK may attempt to associate to other RDCs, but theother RDCs will deny association through the back-end central server,causing the PDK to ignore the other RDCs as previously described above.It is noted that such a technique may eliminate a cell size issue, wherethe cell must be constrained to prevent other RDCs the PDK is registeredto from accessing the PDK.

In another technique for directing a PDK to communicate to one RDC in aconfiguration where multiple RDCs exist of which the PDK is registeredto, by significantly reducing the RF power level from the RDC andproviding this information along with a request for the PDK to reduceits RF power, a close proximity communications channel may be created.The close proximity communications channel may then operate as if asingle cell network exists. More particularly, if the RDC is configuredto have a reduced RF power output, the RDC's cell boundary shrinkscausing the PDK to have to be within closer proximity of the RDC toreceive a beacon from that RDC. If, in turn, the RDC indicates in thebeacon that it is at reduced RF power, the PDK is aware that the RDC isin extremely close proximity. In addition, if the beacon includes acommand to instruct the PDK to reduce RF power, the chance ofsurrounding RDCs receiving a response or interference from the PDK maybe minimized. When the communications channel is terminated and the PDKno longer sees the beacon from that RDC, the PDK may readjust its RFpower level to normal levels for a larger cell coverage area. Suchdynamic RF power level adjustment may be implemented in the systemstack.

Thus, in one or more embodiments, there exists a scheme to dynamicallyadjust a transmission power and/or reception sensitivity of a wirelessreader device along with an ability to command a client device to dolikewise to permit both cell coverage and client device response areaprogrammability. This may enable the dynamic tracking of transientclient devices within and through the cell's extended or defaultcoverage area with full power and sensitivity at both ends, whileconcurrently allowing the association of a particular client device inclose proximity to the reader device for command and control of anapplication or service during a session. Those skilled in the art willnote that by dynamically varying a size of a cell in which a securetransaction takes place between a PDK and an RDC (or in which a PDKaccesses an application via an RDC), at least some level of security maybe achieved in that eavesdropping may be prevented. Moreover,unnecessary and potentially unsafe propagation of a wireless signalsbeyond a certain distance may be avoided.

For example, a plurality of PDKs may be located in a default wirelesscoverage range of an RDC. This default wireless coverage range mayrepresent a cell of the RDC at full power. As the plurality of PDKsenter and exit the RDC's cell, the RDC reports corresponding locationtracking information back to, for example, a central server. When one ofthe PDKs requests access to an application secured by the RDC, the RDCmay follow by reducing its RF power and commanding the requesting PDK toalso lower its RF power, thereby in effect requiring that the requestingPDK be “drawn in” to the RDC in order for the PDK to access theapplication. It is noted that while the RDC may communicate with therequesting PDK via low power RF signals, the RDC may continue tomaintain its default wireless coverage range for tracking other PDKs.When the requesting PDK is moved away from the RDC or the session isotherwise terminated, both ends return to their default full RF powersettings.

As described above, reception sensitivity of the RDC and/or PDK may bechanged as part of a cell size variation technique in accordance withone or more embodiments. Reception sensitivity may be adjusted using anRF attenuator (e.g., a step, variable, or programmable RF attenuator)that is either specific to a receive path or common to both receive andtransmit paths. It is noted that even if the attenuator is common toboth receive and transmit paths, transmit power may be independentlycontrolled. Further, in one or more embodiments, a separate attenuatormay be used to allow for independent control of transmission power andreception sensitivity.

To determine how much to adjust the size of a wireless cell withoutsevering a wireless connection between an RDC and a PDK, one or more ofvarious metrics may be used. For example, in one or more embodiments, asignal strength of the PDK may be monitored to determine by how much topower down a transmission power of the RDC and/or the PDK. If the signalstrength is determined to be relatively strong, then the RDC may cause areduction in transmission power that is greater than if the signalstrength were detected as being weak. Conversely, if the signal strengthis detected as being weak, the RDC may lower transmission power by asmall amount or not at all. Instead of or in addition to relying onsignal strength, a bit error rate may be assessed to determine by howmuch to power down the transmission power. For example, if the bit errorrate of communications between the RDC and PDK is determined to be low,then the RDC may lower transmission power by an amount greater than ifthe bit error rate was determined to be relatively high.

Further, as described above, the transmission power and/or receptionsensitivity of either or both of an RDC and a PDK may be adjusted. Inone or more embodiments, only a transmission power of the PDK may beadjusted. This may done to, for example, “bring in” the PDK and reducethe likelihood of that PDK interfering with other RDCs. In one or moreother embodiments, the transmission power of both the RDC and the PDKmay be adjusted in an effort to draw in the PDK to the RDC. In still oneor more other embodiments, in addition to or instead of adjustingtransmission power, reception sensitivity of either or both of the RDCand the PDK may be changed.

Moreover, in one or more embodiments, an RDC may have multiple wirelesstransceivers, whereby at least one of the transceivers is at full powerfor PDK location tracking purposes, while one or more of the othertransceivers are used to establish adjustable wireless cells forparticular associations with PDKs. For example, in the case of an ATMmachine having an RDC, the RDC may carry out a secure transaction with aPDK in an adjusted wireless cell, while at the same time, casting abroader wireless cell to monitor and identify one or more PDKs aroundthe transacting PDK. In such a manner, for example, a security measuremay be implemented by which the RDC can identify individuals behind atransacting user. Further, as an added or alternative security measure,transmission power may be adjusted dependent on a sensitivity of thetype of data requested to be exchanged in a particular transaction. Suchdata sensitive transactions may be conducted at low power withadditional security measures such as password entry or biometric input.

Application Utilizing Multi-Cell Coordination

The following describes a system architecture and operation of a systemwithin, for example, a casino application. Referring to FIG. 31, a CRDC(not shown) and multiple RDCs (shown, but not individually labeled) aredistributed throughout a casino floor. In such embodiments, a singleCRDC generates a cell 210 that provides ubiquitous coverage of theentire floor. On the left side of FIG. 31, multiple RDCs (shown, but notlabeled) provide overlapping cell coverage and blanket the casino floorand gaming table area 212 all the way to an entrance of the casino withcontinuous wireless service coverage. These RDCs may be dedicated to PDKlocation tracking, allowing the casino operator to know where a playercarrying his/her PDK is geographically located on the floor. These RDCsmay be mounted in the floor or ceiling, creating, for example,relatively symmetrical cells.

Another set of RDC cells (shown, but not labeled) are shown to exist inthe right side of FIG. 31 and are integrated in gaming machines (shown,but not labeled) within an electronic gaming area 214. The cellorientation for these RDCs is more oblong and focused at players thatare within close proximity and in front of the electronic gamingmachines, noting that cell orientation and shape may be set according toantenna position and/or configuration. The cells extend outward towardsthe center of the isle to detect the presence of a player that may bewalking by. Toward the lower right part of FIG. 31 is a registrationcell 216 that sits at a registration desk (shown, but not labeled) wherea player may register and acquire a PDK the first time the player entersthe casino. The registration cell 216 may be smaller in size to enablelocal communications between the RDC and PDK without allowing externalRF monitoring devices to capture and record the interaction between thedevices.

It is noted that in FIG. 31, a PDK 218 that is currently out of therange of all RDCs, but still in range of the CRDC. This represents a PDKcarried by a player, which is being used to track the player's positionand provide additional services. Such services are further describedbelow.

Further, still referring to FIG. 31, there is a central server 220. Thecentral server 220 may contain a player's financial information (creditcard numbers, gambling limits, and other information related to aplayer). In addition, the central server 220 may be physically wired(not shown) to all RDCs and/or CRDCs located throughout the casino.

Although not shown in FIG. 31, within the PDK location tracking system,RDCs may be gambling tables that also have RDCs embedded within thetable itself. A representative gambling table is shown in FIG. 32.

As shown in FIG. 32, a gambling table 230 has RDCs 232, 234, 236, 238,240, 242, 244, 246 embedded within it. RDC 246 may be a dealer RDC thathas a cell geometry covering the dealer's area, allowing the dealer tofreely move around in this area. There are an additional RDCs 232, 234,236, 238, 240, 242, 244 that are located at each player position. Eachof these RDC cell's coverage areas are oblong and are directed to wherethe player would be sitting/standing. It is noted that each playerposition's RDC 232, 234, 236, 238, 240, 242, 244 allows for somecoverage of the region directly behind each player position, allowingthe RDC 232, 234, 236, 238, 240, 242, 244 to report back through thesystem the presence and identity of anyone behind the player. The RDCcell's coverage areas may be minimized to cover the area where a dealeror player may be located relative to the table. Those skilled in the artwill note that the actual cell footprints may vary from those shown inFIG. 32. Utilizing distributed RDCs with directional, highly attenuated,antennas allows the casino operator to know the location of both dealersand players, and the amount of time they remained at the table.

The CRDC, PDK location tracking RDCs, and gambling table RDCs, mayinteroperate in a system such as that shown in FIG. 33. FIG. 33 shows agraphical representation of the sequence of events that may occur when ac-beacon is transmitted in, for example, a casino application. As shownin FIG. 33, first, a CRDC 250 transmits the c-beacon to all RDCs andPDKs (shown, but not labeled) within the CRDC's cell radius. All of theRDCs and PDKs setup and synchronize their timing to the beacon. Next,each PDK, in its appropriate timeslot, transmits a PDK location responseID. Any RDC that is in the vicinity of the PDK's response receives thePDK location response ID and logs specific information related to thereception. Then, each RDC packetizes the information received from thePDK and, through a wired back channel, relays the information to acentral server 252. The central server 252 may then utilize thisinformation to indicate to an operator, by either graphical or textformat, the geographic location of each player.

Representing the flow in a different manner, the interactions for asingle PDK is shown in FIG. 34. In addition to providing locationtracking information, when the PDK outputs a PDK location response ID,certain events may occur from an RDC based device. In the event the RDCbased device is an electronic game, via the central server, theelectronic game may entice the player over to it by flashing informationon the screen related to that specific player. In one example, anelectronic gaming machine may offer the player a free game, gaining theplayer's attention and ultimately enticing the player to play the game.In order to identify the player, further steps may be taken between thePDK and the RDC that are described below.

In the event the RDC device is used for location tracking, it mayperform further interrogation of the PDK to determine whether the PDK islegitimate. A more detailed description of such interrogation isprovided below.

Now referring to FIG. 35, it shows two CRDCs with overlapping cellcoverage, but not to the point where each CRDC can see the other CRDC.As shown in FIG. 35, the CRDC cells are non-uniform in nature due toobstructions blocking the transmit radio path. The CRDC cell overlap maycause a number of RDCs to be in each CRDC cell. It is envisioned thatother CRDCs may overlap in the same region if they are placed above andbelow the RDC micro-cellular structure. In this case, for example, up to4 channels may be occupied just for CRDC beacon transmission.

Due to the possibility of interferers in the coverage area of the CRDC,the central server may manually configure the CRDC, or the centralserver may also instead or additionally have the capability toauto-configure. In the case the central server performs manualconfiguration, upon initial installation, power up, and provisioning,the CRDC is configured to remain in a dormant state until the centralserver interacts with the device and instructs it to perform specifictasks. The central server may first instruct the CRDC to enable thereceiver, scan all channels, and report back the findings of eachchannel. When the CRDC scans each channel, it collects signal qualitymetrics and any IEEE 802.15.4 radio transmissions. The operator of thecentral server may then analyze all of the signal quality metricinformation and any IEEE 802.15.4 framing information to determine thebest channel the CRDC should transmit its beacon on. Once determined,the operator at the central server may command the CRDC to store thespecific channel that it will transmit on and enable it to begintransmitting. The operator may then select the next CRDC and perform thesame operations, until all CRDCs have been configured in the network.

In an automatic configuration mode, the CRDC scans each channel andcollects signal quality metrics and determines if other IEEE 802.15.4devices (including another CRDC) are present. The CRDC may then selectthe quietest channel to begin its beacon transmission on. Further, it isnoted that it may be recommend that initial auto-configuration of a CRDCoccur when there is a single CRDC present. This recommendation is basedon the fact that the CRDC may have overlapping coverage with anotherCRDC as shown in FIG. 35, but the CRDC is not aware of the overlap,causing two CRDCs to transmit their beacons on the same channel.Eventually, due to potential timing inaccuracies in the CRDCs, they mayoverlap and become direct interferers to RDCs and PDKs in theoverlapping area. An exception to this recommendation is when the systemis configured to allow the CRDC to report back the channel that itoccupies (or intends to occupy) to the central server, and the servercan then analyze the CRDC channel lineup on all CRDCs and reassign achannel for any given CRDC.

Once a channel has been assigned and stored in a local non-volatilememory of the CRDC, upon next power up, the CRDC scans all channelsagain and return to their last assigned channel provided that it is notoccupied by an interferer or by another CRDC beacon. In such a case, theCRDC may have to again go through the initialization process.

Although a synchronized system may lead to higher throughput and maypossibly lead to better battery life, in one or more embodiments, it maynot be necessary for CRDCs to be synchronized. Because each CRDCoperates on a separate channel, there may be no timing-specificconsideration that needs to be addressed between CRDCs. Instead, aconcern may relate to how the PDK aligns to multiple unsynchronizedCRDCs. From a PDK location-tracking standpoint, the PDK may be requiredto lock to a single CRDC beacon. The CRDC beacon will indicate to PDKswhat other channels a CRDC may be located on. The PDK may not need toattempt receiving from any other CRDC, provided the signal qualitymetrics for the current CRDC it is monitoring has sufficient signalquality to receive error free data. In the case the signal qualitydegrades, the PDK may then periodically switch to other channel(s) todetermine if a better signal quality can be obtained. If a better signalquality is determined to be on an alternate channel, the PDK may thenimmediately switch to the alternate channel, provided it is not inassociation with an RDC at that instance in time. If the PDK has begunassociation to an RDC, the PDK may have to attempt to finish theassociation before switching to the alternate channel. It is noted thatonce a PDK is in association with a RDC, the PDK is no longer requiredto monitor the CRDC beacon, until the association ends between thedevices by releasing the link or by the PDK leaving the RDC cell.

When an RDC is powered up for the first time, the RDC may not be awareof the network it belongs to or its configuration within the network.The RDC may default to a single cell configuration. For this reason,RDCs placed in a CRDC cell configuration may by default remain in adormant state upon its first initial power up in the network. This mayallow the central server to configure any specific information relatedto the network into the RDC prior to operation. Some of this informationmay include, for example, the site ID, a local RDC ID, and otherparameters related to the wireless transmission protocol. The site ID isimportant, because the property owner may not want their RDCs to becomeassociated with another property; thus, the RDC should synchronize tobeacons transmitted with that site's ID. The RDC ID is used incommunication between a PDK and RDC; hence, there should be one RDC IDper RDC device in the network. Other application-dependent parametersmay include how the unit operates when associated with a PDK and whetherthe RDC sends data back to the server when data is ready, or if theserver must poll the RDC for the information. The central server maythen command the RDC to enable its receiver and scan all channels todetermine the signal quality of each channel and which CRDCs may bereceived by the RDC. The operator of the central server may allow theRDC to automatically select which CRDC Beacon to lock to, or can commandthe RDC to select a specific CRDC beacon. After reviewing the channellist for signal quality, the system may then command which channels theRDC can use for alternate channels for RDC-PDK communications, or thesystem may command the RDC to automatically select the alternatechannels. The system may then place the RDC in operation mode, and theRDC then tunes to the selected CRDC beacon channel and remains therelistening for CRDC beacons and any PDK that sends a PDK locationresponse ID. While receiving the c-beacon, the RDC may configure itstimeslot information similar to that described above. This defines thesuperframe structure as well as defining which timeslots (odd or even)the RDC is permitted to communicate with a PDK on the beacon channel.

In the background, on the alternate wireless link described above withreference to FIG. 9, the RDC may continue to scan the alternatechannels, updating its list of clear channels. This updated list maythen be used when a RDC determines it wants to extend its communicationwith a PDK in association mode and selects which channel thatcommunication will occur on. The RDC, in operational mode, may performframe and slot alignment to the CRDC and listen for a PDK locationtracking response. On a periodic basis, the RDC may send informationback to the central server indicating that it is still operational andindicating the status of the communications channels (e.g., CRDC beacon,alternate channels).

In one or more embodiments, a registration RDC may be used to initiallyenable and to configure a PDK. The registration RDC may have a smallcell coverage area by design, measured, for example, in inches. This mayrequire that the unregistered PDK must be in extremely close proximity,e.g., placed on the registration RDC housing, to communicate with theregistration RDC, reducing the likelihood of RF eavesdroppers gainingaccess to PDK setup information.

The registration RDC may be directly connected to a central server. Inaddition to specific security features, the registration RDC installsand configures service provider information located on the centralserver (described above with reference to FIGS. 6 and 7). Suchinformation may include the service provider ID, secret key, and otherparameters that the service provider wants to designate for accesswithin their network. These other parameters may vary in size in the PDKand may be defined by the host system to meet the needs of the property.Information transferred to a PDK may include, for example, the serviceprovider site ID, the service provider's assigned PDK ID, the serviceprovider's secret service ID, the service provider's secret key, andservice provider specific access information.

Now describing an example of an operation in accordance with one or moreembodiments, once a system has been installed and properly provisioned,a rated player may walk into the casino. They are greeted by a host andwalked over to the registration desk, where the player's information,already in the central server, is linked to a PDK that is given to theplayer and assigned with specific privileges. The player places the PDKin their pocket and begins to walk throughout the casino. Once the PDKleaves the registration cell, the PDK enters discovery mode and scansthe channels for a c-Beacon. If the PDK does not locate the c-beacon, itcontinues to scan for an undetermined period of time until it eithergoes into battery save mode or finds a c-beacon.

Once the PDK finds a c-Beacon, the PDK determines if the c-beacon is aparticular type of network and the site ID is in its local serviceprovider database. If the site ID is not in the database, the PDKignores that c-beacon and keeps looking for other c-beacons on otherchannels until one is found that is in its local database. Once a validc-beacon containing a site ID that is in the PDK's local database isfound, the PDK extracts the CRDC channel availability flags and checksthe other channels in the CRDC channel availability list. The PDK thendetermines which CRDC has the best signal quality metrics. The PDKswitches to that channel and begins receiving c-beacons. The PDKextracts the CRDC and network configuration information as describedabove. This information may define the framing structure and how the PDKshould operate within the network. The PDK then applies the c-beaconparameters to its radio transceiver parameters, configuring the sleepinterval and response superframe and timeslot information. Because thePDK has just received a c-beacon, the PDK is now aware of the currentsuperframe count. The PDK then configures its timer to wake up justprior to the expected superframe count that it may communicate on.

Now also referring to FIG. 36, when the sleep timer expires, the PDK maywake up, listen for a specific c-beacon, and verify the superframecount. It then waits a predetermined period of time for its slot to beavailable and performs CSMA-CA, and if no other device is attempting torespond, it responds with its PDK location tracking response. If anotherdevice was detected on the channel, the PDK may then reset its timersand wait for the next predefined superframe and timeslot to wake up andattempt again.

It is noted that a PDK in accordance with one or more embodiments may bepowered by an internal battery of, for example, a type commonly used topower small electronic devices such as watches, calculators, and mobilecomputing devices. The power of such a client device battery is consumedwhen the PDK is active. In an effort to reduce and/or minimize batteryconsumption, in one or more embodiments, the active time of a PDK as apercentage of total time may be reduced by management of transmissionand reception times. For example, as described above, a network inaccordance with one or more embodiments may be designed to configuretime slots (e.g., frames), groups of time slots (e.g., superframes),and/or coordinating beacon superframes (e.g., c-superframes) in a mannersuch that a client device is caused to both listen and respond withinspecific time slots. Because these time slots are configured by thenetwork, they may be precisely predicted, thereby allowing the clientdevice to set a timer, return to sleep mode, and waken when a specific,time-slotted interaction is expected or required of the client device.Further, in one or more embodiments, because a network in accordancewith one or more embodiments may implement programmable c-superframelengths, an operator or system may individually tailor performance tomaximize (or at least improve) battery life and/or minimize (or at leastreduce) system inter-message latency without requiring access of theclient device itself or physical alteration of the client device.

When the PDK responds with a PDK location tracking response, every RDCwithin local proximity that can receive the response may log theresponse message in its database along with signal quality metrics and atimestamp. They will then send the information back to the centralserver. The response may be sent by the server polling the RDC or by theRDC if it has data to send. Once the central server receives the PDKinformation from one or multiple RDCs, the server may then determine ifany further communication with the PDK is necessary. If, for example,the system wants to validate the PDK, it can perform a validation. Theserver may then send a command to a specific RDC to set upcommunications with a specific PDK and wait for a response from thatRDC. Because the communication between the RDC and the central servermay not be instantaneous, the RDC may have to wait for the next PDKlocation tracking response. After performing CSMA-CA, it may immediatelyinstruct the PDK to switch to the alternate channel. If, during theCSMA-CA, the RDC detected another device on the channel, the RDC maywait for the next PDK location tracking response from that PDK and thenre-attempt PDK channel reassignment. The PDK may then switch to thealternate channel, perform CSMA-CA, and send a link request to thatspecific RDC ID with its own ID included. The RDC, looking for the linkrequest with its specific ID and a particular PDK ID, detects therequest and then responds with a link grant. Further, the RDC may alertthe central server of the link, and a data exchange occurs withinformation the server is interested in collecting by interrogating thatPDK. After the data exchange occurs, the central server commands the RDCto terminate the link. The RDC may then terminate the link, and the PDKmay returns to the c-Beacon channel, re-synchronizing to the beacon, andbegin monitoring for its timeslot. The PDK may then continue to sendresponses back to all RDCs in its immediate vicinity when its specificsuperframe count and timeslot are valid.

It is noted that the foregoing description detailing a process of PDKvalidation and interrogation relates to one or more embodiments.However, in one or more other embodiments, the central server may havealso altered the service provider information within the PDK.

If, during the switch to the alternate channel for RDC to PDKcommunications, the PDK determines the channel is occupied or the PDKdoes not receive a link grant back from the RDC, the PDK may perform oneor more additional attempts. If after all attempts, the PDK does notreceive a response from an RDC, that PDK may return to the c-beaconchannel, realign to the beacon, and then begin sending its PDK locationtracking ID.

If the RDC was unable to receive the link request from the PDK on thealternate channel, for a predefined period of time, the RDC may flag theerror and continue listening on the channel. If the same RDC is againinstructed to establish communications with the same PDK, the RDC maychoose to use a different alternate channel and redirect the PDK to thenew alternate channel for communications.

Now referring to FIG. 37, it shows a PDK wakeup and response flow in aCRDC coordinated system. For purposes of describing FIG. 37, it isassumed that the PDK has acquired system synchronization and has goneinto the sleep mode after setting its timers to wake up on the nextpredefined superframe. The PDK remains in sleep mode until the wakeuptimer expires and wakes up the PDK. The PDK then enables and tunes itsreceiver to the c-beacon channel and listens for the beacon for apredefined period of time. If no beacon is detected, the PDK checks forother CRDC channel available flags in its local memory. It thenreassesses signal quality and beacons on the alternate CRDC channels.

After the PDK assesses the other CRDC channels and no beacon is found,the PDK goes back into rediscovery mode scanning all channels lookingfor a c-beacon. If no c-Beacon is found, the PDK then starts its deepsleep mode. In the event that other CRDC channels are present, the PDKassesses the signal quality of each channel and selects the bestchannel. The PDK then selects that channel and tunes to it listening forthe CRDC beacon.

When the PDK receives the beacon, it checks all of the parametersassociated with it including the superframe count. If the PDK determinesthe superframe count is not the correct one for it to wake up andrespond on, it sets its internal sleep timer to wake up just before thenext expected superframe it should respond to and returns to sleep mode.If the PDK determines that the beacon is on the PDK's expectedsuperframe count, the PDK then stays awake, but stops listening untiljust before its expected timeslot. The PDK may then perform CSMA-CA todetermine if the channel is busy. If the PDK determines the channel isbusy, the PDK may again set its internal sleep timer for the nextexpected superframe and return to the sleep mode.

If the PDK finds the channel to be available, the PDK then transmits itslocation tracking response and waits for one additional timeslot for aresponse from an RDC. If the PDK receives a response from an RDC, itthen performs the command sent by the RDC (e.g., to switch to thealternate communications channel). If the PDK does not receive aresponse from an RDC, the PDK may again set its internal sleep timer towake up just before the next expected superframe it should respond toand then return to sleep mode.

As described above with reference to FIG. 31, in one or moreembodiments, an RDC may be located within an electronic game on anelectronic gaming floor. Each game may have an integrated dual wirelesslink RDC, such as that described above with reference to FIG. 9. The RDCmay be used for PDK location tracking and PDK association. There arevarious approaches in integrating an RDC into an electronic game orother equipment housing. In one approach, shown in FIG. 38, theintegration of the RDC is from a physical perspective; no electricalconnections exist between the RDC and the game. In this configuration,the RDC and electronic game need not even reside within the sameenclosure; they coexist as two physically close, but separate, devices.They may not be connected in any way other than physical proximity. Thepurpose of placing them in close physical proximity is to allow the RDCto perform proximity detection for any player carrying a PDK that may bepositioned near the front of the machine. In this configuration, eachdevice (RDC and electronic game) may have separate connections to acentral server (or an external data concentrator) used to connect bothdevices to a single wired connection back to the server. It is notedthat the game may operate autonomously, with the possible exception ofresponses to any commands sent to it by the server. In this case, theRDC may provide both proximity detection and association with PDKs.

Now also referring to FIG. 39, it shows an example of a handshake thatmay take place from the time a player carrying a PDK is detected to thetime the game is enabled for that player. For purposes of clarity, theCRDC is not shown in FIG. 39. The handshake starts by the PDK detectinga c-beacon. Each time the c-beacon is detected on the expectedsuperframe and timeslot, the PDK may send out a PDK location trackingresponse.

The RDC near the game detects the response and sends the PDK'sinformation back to the central server. The server realizes the user isclose to the game and may send a command back to the game instructing itto display a message for the player in an effort to entice the player toplay. In this example, the player may see the message and sit down atthe game and press a button to commence play. In turn, the game sends amessage back to the server indicating that the button has been pressed.The server then requests the RDC to make a connection with the player'sPDK. Upon the next c-beacon, the player's PDK responds and the RDCreceives the response. The RDC then transmits back to the PDK to changeto another channel for association mode to begin. It is noted that upuntil this time, the PDK was in tracking mode. The PDK then switches tothe alternate channel indicated by the RDC and sends out a PDK linkrequest with both the PDK ID and the RDC ID. The RDC detects the requestand sends back a PDK link grant. The PDK and the RDC then exchangesecure information to establish trust, prior to establishing a securelink for validation of the PDK. The RDC may also lower its RF power andinstruct the PDK to lower its RF power in order to enforce closeproximity. Periodic data exchange may continue to between the RDC andPDK.

After the secure link is established, the RDC may report back to thecentral server that the link is established between the RDC and PDK. Thecentral server may then send a command to the game to display a message,which the game then displays. The player may see the message on thescreen and presses his PDK's button causing it to transmit this eventover the secure link to the RDC. The RDC relays this information back tothe server. When the central Server receives the button press message,it can enable the game so that the player may begin playing.

The handshake continues as shown in FIG. 40. After the game has beenenabled for the player to play, the server may then send a command tothe RDC to start polling the player's PDK. The RDC then periodicallypolls the PDK and may have returned the responses of each poll back tothe server, as shown in FIG. 40.

Still referring to the example being described with reference to FIGS.39 and 40, the player may continue to play the game for a while, thenfinishes and decides to leave. When the player exits the coverage areaof the RDC near the game, the communications link is broken. The RDCattempts to poll the PDK, but receives no response. The RDC continues afew more times with no response. The RDC then reports back to thecentral server that the link was lost and the PDK is out of range. Thecentral server then sends a message to the game to return it to an idlestate so that another player can play, then requests the game to sendback the player's game play information (if not already obtained), whichthe server logs.

As described above with reference to FIGS. 39 and 40, a central servermay be the communications medium linking an RDC to a game. Itcommunicates with the game, tying the PDK to that game. If either deviceloses connection to the central server, game play may stay enabled.

Now referring to FIG. 41, it shows an electronic game with an integratedRDC, internally connected to communicate directly with the game. Thus,all power and communication for the RDC may go through the electronicgame. In this configuration, both the RDC and game reside within thesame game enclosure where they jointly coexist. All informationexchanged between the RDC and Bally Central Server must flow through theelectronic game's controller and network interface. The purpose ofplacing them in the same enclosure allows the RDC to perform proximitydetection for any player carrying a PDK® that may be positioned near thefront of the machine.

At least one difference in the configuration shown in FIG. 41 relativeto the configuration shown in FIG. 38 is that the game's internalcontroller may act to reduce the traffic loading on the back-end networkand perform more local verification of the communications link betweenthe PDK and the RDC. To illustrate a difference in interaction betweenthese two configurations, reference is made to the handshake diagramshown in FIG. 42. More particularly, FIG. 42 shows a handshake that maytake place from the time a player carrying a PDK is detected to the timethe game is enabled for that player. For purposes of clarity, the CRDCis not shown in FIG. 42. The handshake starts by the PDK detecting ac-beacon. Each time the c-beacon is detected on the expected superframeand timeslot, the PDK sends out a PDK location tracking response. TheRDC within the game detects the response and sends the PDK informationback to a central server via the game's internal controller. The serveris made aware that the user is close to the game and sends a commandback to the game controller instructing the game to, for example, givethe user a free game along with optionally displaying the user's name.The game then displays a message for the player in an effort to enticethe player to play. The player may then see the message, sit down at thegame, and press a button to commence game play. In turn, the gamecontroller detects the button press and requests the RDC to make aconnection with the player's PDK. Upon the next c-beacon, the PDKresponds and the RDC receives the response. The RDC may then transmitback to the PDK a command to change to an alternate channel forassociation. The player's PDK then switches to the alternate channelindicated by the RDC and sends out a PDK link request with both the PDKID and the RDC ID. The RDC detects the request and sends back a PDK linkgrant. The PDK and the RDC may then exchange secure information toestablish trust, prior to establishing a secure link for validation ofthe PDK. The RDC may also lower its RF power and instruct the PDK tolower its RF power in order to enforce close proximity. Periodic dataexchange may then continue between the RDC and PDK.

After the secure link is established, the RDC reports back to the gamecontroller that the link is established between the RDC and PDK. Thegame may then display an instructional message for game play. The playermay see the message on the screen and presses the player's PDK button,causing the PDK to transmit this event over the secure link to the RDC.The RDC may then send this information back to the game controller. Whenthe game controller receives the button press message, it can enable thegame so that the player can begin playing.

The handshake continues as shown in FIG. 43. After the game was enabledfor the player to play, the game controller sends a command to the RDCto start polling the player's PDK. The RDC then periodically polled hisPDK and had the option of returning the responses of each poll back tothe controller, as shown in FIG. 43.

Returning to the example described above with reference to FIGS. 42 and43, the player may continue to play the game for a while, then finishesand decides to leave. When the player exits the coverage area of the RDCnear the game, the communications link is broken. The RDC attempts topoll the PDK, but receives no response. The RDC may continue a few moretimes, with no response. The RDC then reports back to the gamecontroller that the link was lost and the PDK is out of range. The gamecontroller returns itself to an idle state so that another player canplay and indicates back to the central server that the PDK is out ofrange. The server may then request the game to send the player's gameplay information (if not already received), which is then logged.

As described above with reference to FIGS. 42 and 43, in one or moreembodiments, the game controller may become more involved in the RDC toPDK association, thereby potentially reducing the back-end systemnetwork's traffic loading relative to that experienced with theconfiguration where an RDC is electrically separate from the gamecontroller. The game controller may also react faster to the userwalking out of range and may not require any response from the server inorder to maintain the link. It is further noted that a broken linkbetween the central server, game controller, and RDC may not result inany loss of any interaction between the RDC and the game controller.

While the invention has been described with respect to a limited numberof embodiments, those skilled in the art, having benefit of the abovedescription, will appreciate that other embodiments may be devised whichdo not depart from the scope of the present invention as describedherein. Accordingly, the scope of the present invention should belimited only by the appended claims.

1. A method of facilitating data exchange, comprising: determining afirst specified time slot based on synchronization informationwirelessly received by the first client device and priority level dataassociated with a first class; assigning the first specific time slotfor a first client device to wirelessly communicate with a fixedproximity-based reader device; reassigning the first specific time slotfor a second client device to wirelessly communicate with the fixedproximity-based reader device, the first specific time slot reset basedon synchronization information wirelessly received by the second clientdevice and priority level data associated with a second class, whereinthe first class is associated with one or more of the first clientdevice and a user of the first client device, and the second class isassociated with one or more of the second client device and a user ofthe second client device.
 2. The method of claim 1, further comprising:assigning a second specific time slot to the first client device, thesecond specific time slot set according to the first class.
 3. Themethod of claim 1, wherein assigning the first specific time slotcomprises: masking a bit field of the first client device.
 4. The methodof claim 3, wherein the mask is wirelessly communicated to the firstclient device.
 5. The method of claim 1, wherein reassigning the firstspecific time slot is dependent on a network traffic load.
 6. The methodof claim 1, wherein the first specified time slot and the secondspecified time slot are on different wireless channels.
 7. The method ofclaim 1, further comprising: reassigning the first specific time slot toa third client device in response to a detection that the first clientdevice is unavailable.
 8. The method of claim 1, further comprising:determining that the first client device should switch to a differentchannel; and sending a message to the first client device, the firstclient device, responsive to receiving the message, switching thechannel upon which the first client device wirelessly communicates witha fixed proximity-based reader device.
 9. The method of claim 8, whereinthe message includes information identifying the first client device,information identifying the fixed proximity-based reader device, adesignation of a channel and a command to switch to the designatedchannel.
 10. The method of claim 8, wherein the determination to switchto the different channel is dependent on at least one of a userassociated with the first client device, a class of a user associatedwith the first client device, a class of the first client device, and anetwork traffic load in the system.
 11. A system, comprising: a networkdevice configured to wirelessly broadcast synchronization information; areader device comprising a first interface and a second interface, thefirst interface configured to wirelessly receive the synchronizationinformation from the network device on a first channel and the secondinterface configured to communicate with the client device in accordancewith the synchronization information on a second channel; and a portableclient device configured to wirelessly receive the synchronization, thereceived synchronization information comprising information assigning aspecific time slot during which the client device can communicate withone or more of the reader device and the network device, the time slotbeing determined according to a priority level data associated with aclass, the class associated with the one or more of the portable clientdevice and the user of the portable client device.
 12. The system ofclaim 11, wherein the client device is configured to transmit data toone or more of the reader device and the network device during thespecific time slot, the time slot determined based on thesynchronization information and priority level data associated with theclass.
 13. The system of claim 11, wherein the client device isconfigured to receive data from one or more of the reader device and thenetwork device during the specific time slot, the time slot determinedbased on the synchronization information and priority level dataassociated with the class.
 14. The system of claim 11, wherein the timeslot is determined based on a mask applied to a bit field stored in theclient device, and wherein the mask is wirelessly communicated to theclient device as part of the synchronization information wirelesslybroadcasted by the network device.
 15. The system of claim 11, whereinthe synchronization information is dependent on at least one of a userassociated with the client device, a class of a user associated with theclient device, a class of the client device, and a network traffic loadin the system.
 16. The system of claim 11, wherein the reader device isconfigured to reassign the timeslot during which the client devicecommunicates with the reader device.
 17. The system of claim 11, whereinthe reader device is configured to reassign the timeslot during whichthe client device communicates with the reader device based at least inpart on at least one of a user associated with the client device, aclass of a user associated with the client device, a class of the clientdevice, and a network traffic load in the system.
 18. The system ofclaim 11, wherein the reader device is further configured to detect theportable client device on the first channel and sending a message to theportable client device on the first channel responsive to adetermination that the reader device wants to communicate with theportable client device, the reader device capable of wirelesslycommunicating on the first and the second wireless channels and furtherconfigured to switch to the second channel responsive to receiving themessage.
 19. The system of claim 18, wherein the message includesinformation identifying the portable client device, informationidentifying the reader device, a designation of a channel and a commandto switch to the designated channel.